o
    Th                     @   sV   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 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                   @   s   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dejfed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createrW   datetimerd   definedescdoubleevaluater   integermeasurer   noneorderreturnsinglestartstringtabler?  varrT  z:=|[-+*\/=^]z\b(IN|NOT)\b"rm  z0'(?:[^']|'')*'(?!')(?:\[[ \w]+\])?|\w+\[[ \w]+\]z
\[[ \w]+\]z(?<!\w)(\d+\.?\d*|\.\d+\b)z[\[\](){}`,.]z.*\nz\*/z#popz[^/*]+z[/*]z""z[^"]+)rootr   rm  N)__name__
__module____qualname____doc__namealiases	filenamesurl	mimetypesversion_addedr   r   Single	Multiliner   r   FunctionBuiltinr   Wordr	   	Attributer
   r   r   Escapetokens r  r  T/home/air/segue/gemini/back/venv/lib/python3.10/site-packages/pygments/lexers/dax.pyr      sV    
DDF
^

N)ru  pygments.lexerr   r   pygments.tokenr   r   r   r   r   r	   r
   r   __all__r   r  r  r  r  <module>   s
    
(