o ag @sbdZddlmZmZmZmZddlmZmZm Z m Z m Z m Z m Z mZmZdgZGdddeZdS)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. ) RegexLexerincludewordsbygroups) TextCommentOperatorKeywordNameStringNumber Punctuation Whitespace EiffelLexerc@seZdZdZdZdgZdgZdgZdefde j fdefde j fd e jfd ee jee jfd ee jee jfed d dde jfdefdefeddejfde fdefdefdejfdefgdejfdejfdejfdejfdejfgdZdS) rzW For `Eiffel `_ source code. .. versionadded:: 2.0 Eiffeleiffelz*.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]+)rootrGN)__name__ __module__ __qualname____doc__namealiases filenames mimetypesrrSingler ConstantrWordrrReservedr rCharr r Classr HexBinOctFloatIntegertokensr]r]8/usr/lib/python3/dist-packages/pygments/lexers/eiffel.pyrsF   N)rLpygments.lexerrrrrpygments.tokenrrrr r r r r r__all__rr]r]r]r^s  ,