
    Mh                     d    d Z ddlmZmZ ddlmZmZmZmZm	Z	m
Z
mZmZ dgZ G d de          ZdS )z
    pygments.lexers.dax
    ~~~~~~~~~~~~~~~~~~~

    Lexer for LilyPond.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerwords)CommentPunctuation
WhitespaceNameOperatorStringNumberTextDaxLexerc                   t   e Zd ZdZdZdgZdgZdZg ZdZ	de
fdej        fd	ej        fd
ej        df eddd          ej        f eddd          ej        fdefdej        fdedfdej        fdej        fdefdefdefgd
ej        dfdej        dfdej        fdej        fgdej        fdedfdefgd Zd!S )"r   zi
    Lexer for Power BI DAX
    Referenced from: https://github.com/sql-bi/SyntaxHighlighterBrushDax
    Daxdaxz*.daxz<https://learn.microsoft.com/en-us/dax/dax-function-referencez2.15z\s+z--.*\n?z//.*\n?z/\*multiline-comments(k  absaccrintaccrintmacosacoshacotacoth
addcolumnsaddmissingitemsallallcrossfiltered	allexceptallnoblankrowallselected	amordegrcamorlincandapproximatedistinctcountasinasinhatanatanhaverageaverageaaveragexz	beta.distzbeta.invbitand	bitlshiftbitor	bitrshiftbitxorblank	calculatecalculatetablecalendarcalendarautoceilingz
chisq.distzchisq.dist.rtz	chisq.invzchisq.inv.rtclosingbalancemonthclosingbalancequarterclosingbalanceyearcoalescecolumnstatisticscombincombinacombinevaluesconcatenateconcatenatexzconfidence.normzconfidence.tcontainscontainsrowcontainsstringcontainsstringexactconvertcoscoshcotcothcountcountacountax
countblank	countrowscountx	coupdaybscoupdays
coupdaysnccoupncdcoupnumcouppcdcrossfilter	crossjoincumipmtcumprinccurrencycurrentgroup
customdata	datatabledatedateadddatediffdatesbetweendatesinperioddatesmtddatesqtddatesytd	datevaluedaydbddbdegrees
detailrowsdiscdistinctdistinctcountdistinctcountnoblankdividedollardedollarfrdurationearlierearliestedateeffect
endofmonthendofquarter	endofyeareomontherrorevaluateandlogevenexactexceptexpz
expon.distfactfalsefilterfiltersfind	firstdatefirstnonblankfirstnonblankvaluefixedfloorformatfvgcdgenerategenerateallgenerateseriesgeomeangeomeanxgroupbyhashhasonefilterhasonevaluehourifzif.eageriferrorignoreindexint	intersectintrateipmtisafterisblankiscrossfilteredisemptyiserroriseven
isfiltered	isinscope	islogical	isnontextisnumberziso.ceilingisoddisonorafterispmtisselectedmeasure
issubtotalistextkeepfilterskeywordmatchlastdatelastnonblanklastnonblankvaluelcmleftlenlinestlinestxlnloglog10lookupvaluelowermaxmaxamaxx	mdurationmedianmedianxmidminminaminuteminxmodmonthmroundnameofnaturalinnerjoinnaturalleftouterjoinnetworkdaysnextday	nextmonthnextquarternextyearnominal	nonvisualz	norm.distznorm.invznorm.s.distz
norm.s.invnotnownperodd	oddfprice	oddfyield	oddlprice	oddlyieldoffsetopeningbalancemonthopeningbalancequarteropeningbalanceyearororderbyparallelperiodpartitionbypathpathcontainspathitempathitemreverse
pathlength	pdurationzpercentile.exczpercentile.inczpercentilex.exczpercentilex.incpermutpipmtzpoisson.distpowerppmtpreviousdaypreviousmonthpreviousquarterpreviousyearprice	pricediscpricematproductproductxpvquarterquotientradiansrandrandbetweenzrank.eqrankxratereceivedrelatedrelatedtableremovefiltersreplacereptrightrolluprollupaddissubtotalrollupgrouprollupissubtotalround	rounddownrounduprowrrisameperiodlastyearsamplesampleaxiswithlocalminmaxsearchsecondselectcolumnsselectedmeasureselectedmeasureformatstringselectedmeasurenameselectedvaluesignsinsinhslnsqrtsqrtpistartofmonthstartofquarterstartofyearzstdev.pzstdev.szstdevx.pzstdevx.s
substitutesubstitutewithindexsum	summarizesummarizecolumnssumxswitchsydzt.distz	t.dist.2tz	t.dist.rtzt.invzt.inv.2ttantanhtbilleq
tbillprice
tbillyieldtime	timevaluetocsvtodaytojsontopntopnperleveltopnskiptotalmtdtotalqtdtotalytdtreatastrimtruetruncunicharunicodeunionupperusercultureuserelationshipusernameuserobjectiduserprincipalnameutcnowutctodayvaluevalueszvar.pzvar.szvarx.pzvarx.svdbweekdayweeknumwindowxirrxnpvyearyearfracyield	yielddiscyieldmatz(?i)z\b)prefixsuffix)atascbooleanbothbycreaterY   datetimerf   definedescdoubleevaluater   integermeasurer   noneorderreturnsinglestartstringtablerA  varrV  z:=|[-+*\/=^]z\b(IN|NOT)\b"ro  z0'(?:[^']|'')*'(?!')(?:\[[ \w]+\])?|\w+\[[ \w]+\]z
\[[ \w]+\]z(?<!\w)(\d+\.?\d*|\.\d+\b)z[\[\](){}`,.]z.*\nz\*/z#popz[^/*]+z[/*]z""z[^"]+)rootr   ro  N)__name__
__module____qualname____doc__namealiases	filenamesurl	mimetypesversion_addedr   r   Single	Multiliner   r   FunctionBuiltinr	   Wordr
   	Attributer   r   r   Escapetokens     S/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/dax.pyr   r      s         DgG	I
HCIM Z ((W&(<=U CZH  ID/ D/ D/H 15ID?L U -
 u. . .
 04|= h'hm,68$@ DN+*F3{+dOu\
| W&(<=W&/)*g'(	
 FM"66"v
Ii iFFFr  N)rw  pygments.lexerr   r   pygments.tokenr   r   r   r   r	   r
   r   r   __all__r   r  r  r  <module>r     s     - , , , , , , ,) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ,u u u u uz u u u u ur  