
    
                     d    S r SSKJrJrJrJr  SSKJrJrJ	r	J
r
JrJrJrJr  S/r " S S\5      rg)z
pygments.lexers.eiffel
~~~~~~~~~~~~~~~~~~~~~~

Lexer for the Eiffel language.

:copyright: Copyright 2006-2023 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                       \ rS rSrSrSrSrS/rS/rS/r	S\
4S	\R                  4S\
4S
\R                  4S\R                   4S\" \R                   \
\R                   5      4S\" \R                   \
\R                   5      4\" SSSS9\R&                  4S\4S\4\" S5      S\R,                  4S\4S\4S\4S\R2                  4S\
4/S\R6                  4S\R8                  4S\R:                  4S\R<                  4S\R>                  4/S .r S!r!g")#r      z0
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]+)rootrI    N)"__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenames	mimetypesr   r   Singler	   Constantr   Wordr   r   Reservedr   r   Charr   r
   Classr   HexBinOctFloatIntegertokens__static_attributes__rK       )lib/third_party/pygments/lexers/eiffel.pyr   r      sf   
 D
!CjGI !I *%'*%@'BRBRS*HMM:+hmmZ?A*hmmZ?A 8 AJRWY 	 08 &)I-DhOk*4d;!4::.Z ;
@ "6::.FJJ'VZZ(16<<@'
A'Frc   N)rP   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   __all__r   rK   rc   rd   <module>rh      s7    @ ?   /3* 3rc   