
    L&i
                     l    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 G d de          ZdS )z
    pygments.lexers.eiffel
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for the Eiffel language.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerincludewordsbygroups)CommentOperatorKeywordNameStringNumberPunctuation
WhitespaceEiffelLexerc                      e Zd ZdZdZdZdgZdgZdgZde	fde
j        fde	fd	ej        fd
ej        fd eej        e	ej                  fd eej        e	ej                  f eddd          ej        fdefdef ed          dej        fdefdefdefdej        fde	fgdej        fdej        fdej        fdej        fdej        fgdZd S )!r   z<
    For Eiffel source code.

    .. versionadded:: 2.0
    Eiffelzhttp://www.eiffel.comeiffelz*.eztext/x-eiffelz[^\S\n]+z--.*?$z0(?i)(true|false|void|current|result|precursor)\bz(?i)(not|xor|implies|or)\bz(?i)(and)(?:(\s+)(then))?\bz(?i)(or)(?:(\s+)(else))?\b)3acrossagentaliasallasassignattached	attributecheckclassconvertcreatedebugdeferred
detachabledoelseelseifendensureexpandedexportexternalfeaturefromfrozenifinheritinspect	invariantlikelocalloopnonenoteobsoleteoldonceonlyredefinerenamerequirerescueretryselectseparatethenundefineuntilvariantwhenz(?i)\bz\b)prefixsuffixz"\[([^\]%]|%(.|\n)|\][^"])*?\]"z"([^"%\n]|%.)*?"numbersz'([^'%]|%'|%%)'z4(//|\\\\|>=|<=|:=|/=|~|/~|[\\?!#%&@|+/\-=>*$<^\[\]])z([{}():;,.])z$([a-z]\w*)|([A-Z][A-Z0-9_]*[a-z]\w*)z([A-Z][A-Z0-9_]*)z\n+z0[xX][a-fA-F0-9]+z
0[bB][01]+z0[cC][0-7]+z!([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)z[0-9]+)rootrH   N) __name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesr   r   Singler	   Constantr   Wordr   r   Reservedr   r   Charr   r
   Classr   HexBinOctFloatIntegertokens     c/home/geonatureadmin/si_en_reseau/tutos/venv/lib/python3.11/site-packages/pygments/lexers/eiffel.pyr   r      sy        
 D
!CjGI !I *%'*%@'BRS*HM:+XhmZ??A*XhmZ??AU 8 AJRWY Y Y 	 08 &)GI-DhOk*4d;!4:.Z ;
@ "6:.FJ'VZ(16<@'
A' 'FFFr`   N)rM   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   __all__r   r_   r`   ra   <module>re      s     @ ? ? ? ? ? ? ? ? ? ? ?                    /3 3 3 3 3* 3 3 3 3 3r`   