�
|�e� � �\ � d Z ddlmZmZ ddlmZmZmZmZm Z m
Z
mZmZ dgZ
G d� de� Zy)z�
pygments.lexers.dax
~~~~~~~~~~~~~~~~~~~
Lexer for LilyPond.
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�words)�Comment�Punctuation�
Whitespace�Name�Operator�String�Number�Text�DaxLexerc �� � e Zd ZdZdZdgZdgZdZg Zde fde
j fde
j fd e
j d
f e
ddd
�� ej f e
ddd
�� ej fdefdej$ fdedfdej( fdej( fdefdefdefgd e
j d
fde
j dfde
j fde
j fgdej0 fdedfdefgd�Zy )!r
z�
Lexer for Power BI DAX
Referenced from: https://github.com/sql-bi/SyntaxHighlighterBrushDax
.. versionadded:: 2.15
�Dax�daxz*.daxz<https://learn.microsoft.com/en-us/dax/dax-function-referencez\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.distzbeta.inv�bitand� bitlshift�bitor� bitrshift�bitxor�blank� calculate�calculatetable�calendar�calendarauto�ceilingz
chisq.distz
chisq.dist.rtz chisq.invzchisq.inv.rt�closingbalancemonth�closingbalancequarter�closingbalanceyear�coalesce�columnstatistics�combin�combina�
combinevalues�concatenate�concatenatexzconfidence.normzconfidence.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�ifzif.eager�iferror�ignore�index�int� intersect�intrate�ipmt�isafter�isblank�iscrossfiltered�isempty�iserror�iseven�
isfiltered� isinscope� islogical� isnontext�isnumberziso.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.distznorm.invznorm.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� pdurationzpercentile.exczpercentile.inczpercentilex.exczpercentilex.inc�permut�pi�pmtzpoisson.dist�power�ppmt�previousday�
previousmonth�previousquarter�previousyear�price� pricedisc�pricemat�product�productx�pv�quarter�quotient�radians�rand�randbetweenzrank.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�startofyearzstdev.pzstdev.szstdevx.pzstdevx.s�
substitute�substitutewithindex�sum� summarize�summarizecolumns�sumx�switch�sydzt.distz t.dist.2tz t.dist.rtzt.invzt.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�valueszvar.pzvar.szvarx.pzvarx.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� mimetypesr r �Single� Multiliner r �Function�Builtinr �Wordr
� Attributer r r �Escape�tokens� � �5/usr/lib/python3/dist-packages/pygments/lexers/dax.pyr
r
st � �� �D��g�G�� �I�
H�C��I� �Z� �
����(�
����(�
�W�&�&�(<�=�
� CZ�H ��ID/�H 15�
�
�ID
?�L � -�
�u�.�
04�|�|�
=� �h�'�
�h�m�m�,�
�6�8�$�
@����
�
�D�N�N�+�
*�F�3�
�{�+�
�d�O�u\
�| �W�&�&�(<�=�
�W�&�&��/�
��)�)�*�
�g�'�'�(�
� �F�M�M�"�
�6�6�"�
�v��
�Ii�Fr� N)rw �pygments.lexerr r �pygments.tokenr r r r r r
r r �__all__r
r� r� r� �<module>r� s5 ��� -�)� )� )� �,��v�z� vr� |