Ë
    RPf‡  ã                   ó`   — 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-2024 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Zde› d�Zde
› de› de› de› d�	Zde› de
› de› de› d�	Zde
› de› de› de› d�	Zde› e› de
› e› de› e› de› d�ZdZde› de› d�Zde› de› de› d�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e› d� eej<                  ej6                  ej@                  «      d fd!e› d"� eej<                  ej6                  ej@                  «      d#fd$e› d%� eej<                  ej6                  ej@                  «      d#fd&e› d� eej<                  ej6                  ej@                  «      d#fd' eej<                  ej6                  ej:                  «      dfd(e› d� eej<                  ej6                  e«      fd)e› d*� eej<                  ej6                  e«      fd+ eej<                  ej6                  ejB                  e«      fd,e› d-� eej<                  ej6                  ej@                  «      d.fd/e› �ejB                  fd0e› d1�ejB                  fd2ejB                  fde› d3�ej<                  feefd4ej<                  fd5ej:                  dfd6ej:                  d7fd8ej:                  d9fd:e"d;fd<ed=fd>ed?fd@e#jH                  fdAe#jJ                  fdBe&fg“ddCe'fdDe'dEfdFej6                  fg“dEdGe'dHfdIe'fg“ddJe#jH                  fdKedHfg“d#dL eejP                  ej:                  «      dfdMejP                  feejP                  fdNejP                  fdOedHf ed«      g“d.dPedQf ed«      g“dQdRej<                  fd1ej<                  fdSedTf ed«      g“d dUej2                  dVfdOedHf ed«      g“dVdL eejP                  ej:                  «      dfdMejP                  feejP                  fdNejP                  fdWedHfdOedTf ed«      g“d7dXej:                  fd6ej:                  dHfg“d9dYej:                  fd8ej:                  dHfg“ddZej:                  fd5ej:                  dHfg“d;d:e"d[fd\e"dHfd]e› d� eeejB                  «      fd^efd_efg“d=d<ed[fd`edHf ed«      g“d?d>e&d[fdKe&dHf ed«      g“Z)ya)br   z2
    Lexer for the Elpi programming language.
    ÚElpizhttp://github.com/LPCIC/elpiÚelpiz*.elpiztext/x-elpiz2.11z[a-z]z[A-Z]z[0-9]z([+*^?/<>`'@#~=&!])ú(z|-|\$|_)ú|ú)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+)((z
(,\s*)?)+)z	elpi-typez\b(kind)(\s+)((z|,)+)z\b(typeabbrev)(\s+)(z\b(accumulate)(\s+)(\")z$\b(accumulate|namespace|local)(\s+)(z\b(shorten)(\s+)(z\.)z-\b(pi|sigma)(\s+)([a-zA-Z][A-Za-z0-9_ ]*)(\\)z\b(constraint)(\s+)((z	(\s+)?)+)zelpi-chr-rule-startz
(?=[A-Z_])z
(?=[a-z_])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#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Úversion_addedÚlcase_reÚucase_reÚdigit_reÚ	schar2_reÚ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© ó    úN/var/www/fastapitest/venv/lib/python3.12/site-packages/pygments/lexers/elpi.pyr   r      sñ  „ ñð €DØ
(€CØˆh€GØ�
€IØ�€IØ€Mà€HØ€HØ€HØ&€IØ�I�;˜hÐ'€HØ�X�J˜a ˜z¨¨8¨*°A°h°Z¸qÐA€IØ˜9˜+ U¨8¨*°A°h°Z¸qÀÀÈ4ÐP€OØ�x�j  ( ¨1¨X¨J°a¸°zÀÐE€KØ�x�j  ¨2¨h¨Z¸Ð7HÈÈ)ÈÐU`ÐTaÐadÐenÐdoÐoqÐr€Kð s€IØ�{�m 1 Y K¨sÐ3€IØ˜�} A i [°°)°¸AÐ>€LðAØÙ�F‹Oð
ðAð
 	Ù�OÓ$à3Ù�g—l‘l D§O¡O°V·]±]ÓCØðð  ¡¨'¯,©,¸¿¹Ó!HØ!ð#à,¨\¨N¸!Ð<Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð .¨l¨^¸:ÐFÙ�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð   ˜~¨UÐ3Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð % \ N°!Ð4Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØðð (Ù�g×)Ñ)¨4¯?©?¸F¿M¹MÓJØðð 5°[°MÀÐCÙ�g×)Ñ)¨4¯?©?¸DÓAðCà! + ¨cÐ2Ù�g×)Ñ)¨4¯?©?¸DÓAðCà=Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÈ4ÓPðRà% l ^°9Ð=Ù�g×)Ñ)¨4¯?©?¸D¿M¹MÓJØ"ð$ð ˜;˜-Ð(¨$¯-©-Ð8Ø˜;˜- rÐ*¨D¯M©MÐ:Ø�4—=‘=Ð!Ø�)�˜HÐ% w×':Ñ':Ð;Ø˜$ÐØ˜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Ð*Ø   ¨QÐ/±¸'À4Ç=Á=Ó1QÐRØ˜ÐØ�dˆOð
ð_Aðl 	Ø˜˜wÐ'Ø˜˜vÐ&Ù�F‹Oð
ðmAðv 	Ø�H˜gÐ&Ø�H˜fÐ%Ù�F‹Oð
ðwA�Fr<   N)r   Úpygments.lexerr   r   r   Úpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__r   r;   r<   r=   ú<module>rA      s8   ðñ÷ 9Ñ 8÷÷ ó ð ˆ-€ôZ�
õ Zr<   