Ë
    |í¼e6  ã                   ó`   — d Z ddlmZ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y)z÷
    pygments.lexers.elpi
    ~~~~~~~~~~~~~~~~~~~~

    Lexer for the `Elpi <http://github.com/LPCIC/elpi>`_ programming language.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚbygroupsÚinclude)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ	ElpiLexerc                   óú
  — e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	Zd
Zdj                  e«      Zdj                  e	e
ee«      Zdj                  ee	e
e«      Zdj                  e	e
ee«      Zdj                  e
ee	eeee«      ZdZdj                  ee«      Zdj                  eee«      Zi d ed«      g“d ed«      d eej2                  ej6                  ej:                  «      dfd eej2                  ej6                  «      dfdj                  e«       eej<                  ej6                  ej@                  «      dfdj                  e«       eej<                  ej6                  ej@                  «      dfdj                  e«       eej<                  ej6                  ej@                  «      dfdj                  e«       eej<                  ej6                  ej@                  «      dfd eej<                  ej6                  ej:                  «      dfd j                  e«       eej<                  ej6                  e«      fd!j                  e«       eej<                  ej6                  e«      fd" eej<                  ej6                  ejB                  e«      fd#j                  e«       eej<                  ej6                  ej@                  «      d$fd%j                  e«      ejB                  fd&j                  e«      ejB                  fd'ejB                  fd(j                  e«      ej<                  feefd)ej<                  fd*ej:                  dfd+ej:                  d,fd-ej:                  d.fd/e"d0fd1ed2fd3ed4fd5e#jH                  fd6e#jJ                  fd7e&fg“dd8e'fd9e'd:fd;ej6                  fg“d:d<e'd=fd>e'fg“dd?e#jH                  fd@ed=fg“ddA eejP                  ej:                  «      dfdBejP                  feejP                  fdCejP                  fdDed=f ed«      g“d$dEedFf ed«      g“dFdGej<                  fdHej<                  fdIedJf ed«      g“ddKej2                  dLfdDed=f ed«      g“dLdA eejP                  ej:                  «      dfdBejP                  feejP                  fdCejP                  fdMed=fdDedJf ed«      g“d,dNej:                  fd+ej:                  d=fg“d.dOej:                  fd-ej:                  d=fg“ddPej:                  fd*ej:                  d=fg“d0d/e"dQfdRe"d=fdSj                  e«       eeejB                  «      fdTefdUefg“d2d1edQfdVed=f ed«      g“d4d3e&dQfd@e&d=f ed«      g“Z)yW)Xr   zN
    Lexer for the Elpi programming language.

    .. versionadded:: 2.11
    ÚElpizhttp://github.com/LPCIC/elpiÚelpiz*.elpiztext/x-elpiz[a-z]z[A-Z]z[0-9]z([+*^?/<>`'@#~=&!])z({}|-|\$|_)z({}|{}|{}|{})z({}*(\.({}|{}){}*)*)z({}|{}|{}|{}|:)z({}{}*|{}{}|{}{}*|_{}+)zß(,|<=>|->|:-|;|\?-|->|&|=>|\bas\b|\buvar\b|<|=<|=|==|>=|>|\bi<|\bi=<|\bi>=|\bi>|\bis\b|\br<|\br=<|\br>=|\br>|\bs<|\bs=<|\bs>=|\bs>|@|::|\[\]|`->|`:|`:=|\^|-|\+|\bi-|\bi\+|r-|r\+|/|\*|\bdiv\b|\bi\*|\bmod\b|\br\*|~|\bi~|\br~)z\(({}|{})\)z
({}|{}|{})Úrootz_elpi-commentz#(:before|:after|:if|:name)(\s*)(\")zelpi-stringz(:index)(\s*\()zelpi-indexing-exprz\b(external pred|pred)(\s+)({})zelpi-pred-itemz)\b(external type|type)(\s+)(({}(,\s*)?)+)z	elpi-typez\b(kind)(\s+)(({}|,)+)z\b(typeabbrev)(\s+)({})z\b(accumulate)(\s+)(\")z'\b(accumulate|namespace|local)(\s+)({})z\b(shorten)(\s+)({}\.)z-\b(pi|sigma)(\s+)([a-zA-Z][A-Za-z0-9_ ]*)(\\)z \b(constraint)(\s+)(({}(\s+)?)+)zelpi-chr-rule-startz(?=[A-Z_]){}z(?=[a-z_]){}\\Ú_z({}|!|=>|;)z\[|\]|\||=>ú"ú`z
elpi-btickz\'z	elpi-tickz\{\{z
elpi-quotez\{[^\{]z
elpi-spillz\(zelpi-in-parensz\d[\d_]*z(-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)z[\+\*\-/\^\.]z	%[^\n]*\nz/\*zelpi-multiline-commentz\s+z\*/z#popú.z[0-9 _]+z\)z(ctype\s+)(\")z->z\(|\)z\.z\{zelpi-chr-rulez\brule\bz\\z\}z#pop:2z[io]:z
elpi-ctypeú,z[^` ]+z[^\' ]+z[^\"]+z#pushz\}\}z(lp:)((?=[A-Z_]){})z[^l\}]+zl|\}z\}[^\}]N)*Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚlcase_reÚucase_reÚdigit_reÚ	schar2_reÚformatÚschar_reÚ	idchar_reÚidcharstarns_reÚsymbchar_reÚconstant_reÚ	symbol_reÚ	escape_reÚconst_sym_rer   r   r	   ÚModer   Ú
Whitespacer   ÚDoubleÚDeclarationr
   ÚFunctionÚVariabler   r   ÚIntegerÚFloatr   r   ÚTypeÚtokens© ó    ú6/usr/lib/python3/dist-packages/pygments/lexers/elpi.pyr   r      sÕ  „ ñð €DØ
(€CØˆh€GØ�
€IØ�€Ià€HØ€HØ€HØ&€IØ×$Ñ$ YÓ/€HØ ×'Ñ'¨°¸(À8ÓL€IØ-×4Ñ4°YÀÈ(ÐT]Ó^€OØ$×+Ñ+¨H°hÀÈ(ÓS€KØ,×3Ñ3°H¸iÈÐSbÐdmÐozð  }Fó  G€Kð s€IØ×%Ñ% k°)Ó<€IØ ×'Ñ'¨°I¸iÓH€LðAØÙ�F‹Oð
ðAð
 	Ù�OÓ$à3Ù�g—l‘l D§O¡O°V·]±]ÓCØðð  ¡¨'¯,©,¸¿¹Ó!HØ!ð#à/×6Ñ6°|ÓDÙ�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð :×@Ñ@ÀÓNÙ�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð '×-Ñ-¨lÓ;Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð (×.Ñ.¨|Ó<Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð (Ù�g×)Ñ)¨4¯?©?¸F¿M¹MÓJØðð 8×>Ñ>¸{ÓKÙ�g×)Ñ)¨4¯?©?¸DÓAðCà&×-Ñ-¨kÓ:Ù�g×)Ñ)¨4¯?©?¸DÓAðCà=Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÈ4ÓPðRà0×7Ñ7¸ÓEÙ�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØ"ð$ð ×#Ñ# KÓ0°$·-±-Ð@Ø×%Ñ% kÓ2°D·M±MÐBØ�4—=‘=Ð!Ø×"Ñ" 9Ó-¨w×/BÑ/BÐCØ˜$ÐØ˜W×0Ñ0Ð1Ø�6—=‘= -Ð0Ø�6—=‘= ,Ð/Ø�F—M‘M ;Ð/Ø�k <Ð0Ø˜˜|Ð,Ø�DÐ*Ð+Ø˜&Ÿ.™.Ð)Ø8¸&¿,¹,ÐGØ˜xÐ(ð_0
ðAðl 	Ø˜7Ð#Ø�WÐ6Ð7Ø�T—_‘_Ð%ð
ðmAðv 	!Ø�W˜fÐ%Ø�7ˆOð#
ðwAð~ 	Ø˜&Ÿ.™.Ð)Ø�D˜&Ð!ð
ðAðF 	Ø¡¨¯©°v·}±}Ó EÀ}ÐUØ�G—L‘LÐ!Ø˜'Ÿ,™,Ð'Ø�w—|‘|Ð$Ø�D˜&Ð!Ù�OÓ$ð
ðGAðV 	Ø�D˜/Ð*Ù�OÓ$ð 
ðWAð^ 	Ø˜×,Ñ,Ð-Ø�7×&Ñ&Ð'Ø�4˜Ð"Ù�6‹?ð	
ð_Aðj 	Ø�w—|‘| \Ð2Ø�D˜&Ð!Ù�OÓ$ð
ðkAðt 	Ø¡¨¯©°v·}±}Ó EÀ}ÐUØ�G—L‘LÐ!Ø˜'Ÿ,™,Ð'Ø�w—|‘|Ð$Ø�4˜Ð Ø�D˜(Ð#Ù�OÓ$ð
ðuAðF 	Ø˜Ÿ™Ð&Ø�6—=‘= &Ð)ð
ðGAðN 	Ø˜Ÿ™Ð'Ø�F—M‘M 6Ð*ð
ðOAðV 	Ø˜Ÿ™Ð&Ø�6—=‘= &Ð)ð
ðWAð^ 	Ø�k 7Ð+Ø�k 6Ð*Ø#×*Ñ*¨;Ó7¹À'È4Ï=É=Ó9YÐZØ˜ÐØ�dˆOð
ð_Aðl 	Ø˜˜wÐ'Ø˜˜vÐ&Ù�F‹Oð
ðmAðv 	Ø�H˜gÐ&Ø�H˜fÐ%Ù�F‹Oð
ðwA�Fr9   N)r   Úpygments.lexerr   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   r8   r9   r:   ú<module>r>      s8   ðñ÷ 9Ñ 8÷÷ ó ð ˆ-€ô[�
õ [r9   