|e ddZddlmZmZmZmZddlmZmZm Z m Z m Z m Z m Z mZdgZGddeZy)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. ) RegexLexerincludewordsbygroups)CommentOperatorKeywordNameStringNumber Punctuation Whitespace EiffelLexerceZdZdZdZdZdgZdgZdgZde fde jfde fd e jfd ejfd eeje ejfd eeje ejfed dde j$fdefdefeddej*fdefdefdefdej0fde fgdej4fdej6fdej8fdej:fdej<fgdZy )!rz< For Eiffel source code. .. versionadded:: 2.0 Eiffelzhttps://www.eiffel.comeiffelz*.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)3acrossagentaliasallasassignattached attributecheckclassconvertcreatedebugdeferred detachabledoelseelseifendensureexpandedexportexternalfeaturefromfrozenifinheritinspect invariantlikelocalloopnonenoteobsoleteoldonceonlyredefinerenamerequirerescueretryselectseparatethenundefineuntilvariantwhenz(?i)\bz\b)prefixsuffixz"\[([^\]%]|%(.|\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]+z 0[cC][0-7]+z!([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)z[0-9]+)rootrHN) __name__ __module__ __qualname____doc__nameurlaliases filenames mimetypesrrSingler ConstantrWordrrReservedr rCharr r Classr HexBinOctFloatIntegertokens8/usr/lib/python3/dist-packages/pygments/lexers/eiffel.pyrrsf D "CjGI !I* %  ' * % @'BRBR S *HMM : + hmmZ ? A * hmmZ ? A 8AJRWY   0 8 & ) I   - Dh O k * 4d ; !4:: . Z ; @"6:: . FJJ ' VZZ ( 16<< @  '  A'Fr`N)rMpygments.lexerrrrrpygments.tokenrrr r r r r r__all__rr_r`rares7@? /3*3r`