a
    ñ»jà  ã                   @   sj   d Z ddlmZ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ddlmZ G dd„ deƒZdS )zú
    pygments.lexers.elpi
    ~~~~~~~~~~~~~~~~~~~~

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

    :copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    )Ú
RegexLexerÚbygroupsÚincludeÚusing)ÚTextÚCommentÚOperatorÚKeywordÚNameÚStringÚNumberÚPunctuationÚ	ElpiLexer)Ú	RocqLexerc                   @   s4  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edƒgedƒdeejejejƒdfdeejejeƒdfde› d�eejeje j!ƒdfd e› d�eejeje j!ƒd!fd"e› d#�eejeje j!ƒd$fd%e› d&�eejeje j!ƒd$fd'e› d�eejeje j!ƒd$fd(eejeje j!ƒd$fd)eejejejƒdfd*e› d�eejejeƒfd+e› d,�eejejeƒfd-eejeje j"eƒfd.e› d/�eejeje j!ƒd0fd1e› �e j"fd2e› d3�e j"fd4e j"fde› d5�ejfeefd6ejfd7ejdfd8ejd9fd:ejd;fd<ed=fd>ed?fd@edAfdBe#j$fdCe#j%fdDe&fgdEe'fdFe'fdGejfgdHe#j$fdIedJfgdKeej(ejƒdfdLej(fdMejfeej(fdNej(fdOedJfedƒgdPedQfedƒgdRejfdSejfdTedUfedƒgdVejfdOedJfdWejfedXƒdIejdJfd@ej(dYfedƒedYƒgeej(fdOedJfdWejfdLejfedXƒdIejdJfd@ej(dYfedƒedYƒg	dZeejejejƒdfd[eejejejƒd!fgdLej(feej(fedXƒd@ej(d\fdIej(dJfedƒgd]ejfd8ejdJfgd^ejfd:ejdJfgd_ejfd7ejdJfgd`edJfdGejfdaee#eƒdbfdce› d�ee#e j"ƒfdde)e*ƒfgedƒd`edJfgd>ed\fdeedJfedƒgd@ed\fedƒdIedJfgdfœZ+dgS )hr   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)\)ú_elpi-commentz#(:before|:after|:if|:name)(\s*)(\")úelpi-stringz(:index)(\s*)(\()úelpi-indexing-exprz\b(external pred|pred)(\s+)(úelpi-pred-itemz\b(func)(\s+)(úelpi-func-itemz\b(external type|type)(\s+)((z
(,\s*)?)+)ú	elpi-typez\b(kind)(\s+)((z|,)+)z\b(typeabbrev)(\s+)(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+)?)+)úelpi-chr-rule-startz
(?=[A-Z_])z(?=[a-z_])(z|_)\\Ú_z|!|=>|;)z\[|\]|\||=>ú"ú`ú
elpi-btickz\'ú	elpi-tickz\{\{ú
elpi-quotez\{[^\{]ú
elpi-spillz\(úelpi-in-parensz\d[\d_]*z(-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)z[\+\*\-/\^\.]z	%[^\n]*\nz5/(?:\\\n)?[*](?:[^*]|[*](?!(?:\\\n)?/))*[*](?:\\\n)?/z\s+z[0-9 _]+z\)z#popz(ctype\s+)(\")z->Úpropz\(|\)z\.z\{úelpi-chr-rulez\brule\bz\\z\}z#pop:2z[io]:ú,ú_elpi-inner-pred-funú_elpi-type-itemz(\()(\s*)(pred)z(\()(\s*)(func)z#pushz[^` ]+z[^\' ]+z[^\"]+z\}\}z(lp:)(\{\{)úelpi-quote-exitz(lp:)((?=[A-Z_])z((?!lp:|\}\}).)+z\}[^\}])Úrootr   r   r   r   r   r%   r   r   r'   r(   r   r    r   r!   r)   r"   r#   N),Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesÚversion_addedZlcase_reZucase_reZdigit_reZ	schar2_reZschar_reZ	idchar_reZidcharstarns_reZsymbchar_reZconstant_reZ	symbol_reZ	escape_reZconst_sym_rer   r   r	   ZModer   Ú
Whitespacer   ÚDoubler   ÚDeclarationr
   ÚFunctionÚVariabler   ÚIntegerÚFloatr   r   ÚTyper   r   Útokens© r>   r>   ú:E:\soccer\ml_env\Lib\site-packages\pygments/lexers/elpi.pyr      sL  *ÿþÿ
þ
þ
þ
þ
þþþ
ÿ
ÿÿ
þ


Ë8ýþù
þü

ø

÷þ

ú
þ
þ
þ
ûþýý€ èN)r.   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   r   Ú__all__Zpygments.lexers.theoremr   r   r>   r>   r>   r?   Ú<module>   s
   
(