3

V'íc‚
ã@s^dZddlmZmZmZmZddlmZmZm	Z	m
Z
mZmZm
Z
mZdgZGdd„deƒZdS)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;@sðeZdZdZdZdZdgZdgZdgZde	fde
jfde	fd	ej
fd
ejfdeeje	ejƒfdeeje	ejƒfedSd@dAdBejfdCefdDefedEƒdFejfdGefdHefdIefdJejfdKe	fgdLejfdMejfdNejfdOejfdPejfgdQœZdRS)Trz<
    For Eiffel source code.

    .. versionadded:: 2.0
    ZEiffelzhttp://www.eiffel.comZeiffelz*.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Ú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]+)ÚrootrDN)3rrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r0r1r2r3r4r5r6r7r8r9r:r;r<r=r>r?r@rA) Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesr
rÚSinglerÚConstantrÚWordrrZReservedr
rZCharrr	ZClassrZHexZBinÚOctZFloatZIntegerÚtokens©rTrTú:/tmp/pip-build-gk9425m9/Pygments/pygments/lexers/eiffel.pyrsN
N)rIZpygments.lexerrrrrZpygments.tokenrrrr	r
rrr
Ú__all__rrTrTrTrUÚ<module>	s(