File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/eiffel.cpython-310.pyc
o
���ag
� @ sb d Z ddlmZmZmZmZ ddlmZmZm Z m
Z
mZmZm
Z
mZmZ dgZG dd� de�ZdS )z�
pygments.lexers.eiffel
~~~~~~~~~~~~~~~~~~~~~~
Lexer for the Eiffel language.
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�include�words�bygroups) �Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�
Whitespace�EiffelLexerc @ s� e Zd ZdZdZdgZdgZdgZdefde j
fdefdejfd e
jfd
ee
jee
j�fdee
jee
j�fedd
dd�ejfdefdefed�dejfde
fdefdefdejfdefgdejfdejfdejfdejfdejfgd�ZdS ) r zW
For `Eiffel <http://www.eiffel.com>`_ source code.
.. versionadded:: 2.0
�Eiffel�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+z0[xX][a-fA-F0-9]+z
0[bB][01]+z0[cC][0-7]+z!([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)z[0-9]+)�rootrG N)�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames� mimetypesr r �Singler �Constantr �Wordr r �Reservedr r �Charr
r
�Classr �Hex�Bin�Oct�Float�Integer�tokens� r] r] �8/usr/lib/python3/dist-packages/pygments/lexers/eiffel.pyr sF � �
��
�N)rL �pygments.lexerr r r r �pygments.tokenr r r r r
r r r
r �__all__r r] r] r] r^ �<module> s
,