|e0|dZddlZddlmZmZddlmZmZmZm Z m Z m Z m Z m Z ddgZGddeZGddeZy) z pygments.lexers.prolog ~~~~~~~~~~~~~~~~~~~~~~ Lexers for Prolog and Prolog-like languages. :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerbygroups)TextCommentOperatorKeywordNameStringNumber Punctuation PrologLexer LogtalkLexerceZdZdZdZdgZgdZdgZdejdfdejfd e jfd e jfd e jfd e j fd e j"fde j$fde j"fdefdefde j(fde j*fdefdefdefdefdeej4efdeej6eefdeej6eefde j*fde j*fdej:fdefgdejd fdejd!fd"ejfd#ejfgd$Zd%Zy&)'r z! Lexer for Prolog files. Prologprolog)z*.eclz*.prologz*.proz*.plz text/x-prologz/\*nested-commentz%.*z0\'.0b[01]+0o[0-7]+0x[0-9a-fA-F]+z\d\d?\'[a-zA-Z0-9]+z%(\d+\.\d*|\d*\.\d+)([eE][+-]?[0-9]+)?z\d+z[\[\](){}|.,;!]z:-|-->z`"(?:\\x[0-9a-fA-F]+\\|\\u[0-9a-fA-F]{4}|\\U[0-9a-fA-F]{8}|\\[0-7]+\\|\\["\\abcefnrstv]|[^\\"])*"z'(?:''|[^'])*'zis\bz5(<|>|=<|>=|==|=:=|=|/|//|\*|\+|-)(?=\s|[a-zA-Z0-9\[])z(mod|div|not)\b_z ([a-z]+)(:)zh([a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*)(\s*)(:-|-->)zd([a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*)(\s*)(\()zY[a-z\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef][\w$\u00c0-\u1fff\u3040-\ud7ff\ue000-\uffef]*z/[#&*+\-./:<=>?@\\^~\u00a1-\u00bf\u2010-\u303f]+z [A-Z_]\w*z&\s+|[\u2000-\u200f\ufff0-\ufffe\uffef]z\*/#popz#pushz[^*/]+z[*/])rootrcd|vryy)z,Competes with IDL and Visual Prolog on *.proz:-g?rtexts 8/usr/lib/python3/dist-packages/pygments/lexers/prolog.py analyse_textzPrologLexer.analyse_textPs 4<N) __name__ __module__ __qualname____doc__namealiases filenames mimetypesr MultilineSingler Charr BinOctHexIntegerFloatr DoubleAtomrrrr NamespaceFunctionrVariabletokensrrrrr r s DjG6I !IW&&(8 9 W^^ $ fkk "  $ &** %  + #V^^ 4 5v|| D V^^ $  -  $78>  G  ,h  E    * 7O XdnnkB CdmmT8 4 6dmmT; 7 9> [[ @ [[  4== ) 6 =Q) VW&& / W&& 0 )) * g'' (  W1FfrceZdZdZdZdZdgZddgZdgZgde d fd e fd e fd e fd e fde fde jfde jfde jfde fdej"fdefdefdefdefdefdefdefdefdefdefdefdefd efd!efd"efd#efd$efd%efd&efd'efd(efd)efd*efd+efd,efd-efd.efd/efd0efd1efd2efd3efd4efd5efd6efd7efd8efd9efd:efd;efdefd?efd@efdAefdBefdCefdDefdEefdFefdGefdHefdIefdJefdKefdLefdMefdNefdOefdPefdQefdRefdSefdTefdUefdVefdWefdXefdYe fdZe fd[ed\fd]efd[ed^fd_ej*fd`efdaefgdbedcfddedcfdeedffdgedcfdhedcfdiedcfdjedcfdkedcfdledcfdmedcfdnedcfdoe dcfdpe dcfg dqefde fde jfde jfde jfde fdej"fdZe fd[ed\fdXefdre dcfdsefdYe fd e fd e fd e fd e fgdtZduZyv)wrz> For Logtalk source code. .. versionadded:: 0.10 Logtalkzhttp://logtalk.org/logtalkz*.lgtz *.logtalkztext/x-logtalkz^\s*:-\s directivez%.*?\nz/\*(.|\n)*?\*/z\nz\s+z0'[\\]?.rrrz\d+\.?\d*((e|E)(\+|-)?\d+)?z([A-Z_][a-zA-Z0-9_]*)z(after|before)(?=[(])zforward(?=[(])z+(context|parameter|this|se(lf|nder))(?=[(])z-(current_predicate|predicate_property)(?=[(])z8(expand_(goal|term)|(goal|term)_expansion|phrase)(?=[(])z;(abolish|c(reate|urrent))_(object|protocol|category)(?=[(])z*(object|protocol|category)_property(?=[(])z.co(mplements_object|nforms_to_protocol)(?=[(])z)extends_(object|protocol|category)(?=[(])z*imp(lements_protocol|orts_category)(?=[(])z%(instantiat|specializ)es_class(?=[(])z.(current_event|(abolish|define)_events)(?=[(])z((create|current|set)_logtalk_flag(?=[(])zMlogtalk_(compile|l(ibrary_path|oad|oad_context)|make(_target_action)?)(?=[(])z\blogtalk_make\bz(clause|retract(all)?)(?=[(])za(bolish|ssert(a|z))(?=[(])z(ca(ll|tch)|throw)(?=[(])z0(fa(il|lse)|true|(instantiation|system)_error)\bzY(type|domain|existence|permission|representation|evaluation|resource|syntax)_error(?=[(])z!((bag|set)of|f(ind|or)all)(?=[(])zBthreaded(_(ca(ll|ncel)|once|ignore|exit|peek|wait|notify))?(?=[(])zRthreaded_engine(_(create|destroy|self|next|next_reified|yield|post|fetch))?(?=[(])z.(subsumes_term|unify_with_occurs_check)(?=[(])z8(functor|arg|copy_term|numbervars|term_variables)(?=[(])z%(div|rem|m(ax|in|od)|abs|sign)(?=[(])z)float(_(integer|fractional)_part)?(?=[(])z*(floor|t(an|runcate)|round|ceiling)(?=[(])z6(cos|a(cos|sin|tan|tan2)|exp|log|s(in|qrt)|xor)(?=[(])zZ(var|atom(ic)?|integer|float|c(allable|ompound)|n(onvar|umber)|ground|acyclic_term)(?=[(])zcompare(?=[(])z(curren|se)t_(in|out)put(?=[(])z(open|close)(?=[(])zflush_output(?=[(])z!(at_end_of_stream|flush_output)\bz=(stream_property|at_end_of_stream|set_stream_position)(?=[(])z,(nl|(get|peek|put)_(byte|c(har|ode)))(?=[(])z\bnl\bzread(_term)?(?=[(])z"write(q|_(canonical|term))?(?=[(])z(current_)?op(?=[(])z!(current_)?char_conversion(?=[(])z(atom_(length|c(hars|o(ncat|des)))(?=[(])z(char_code|sub_atom)(?=[(])znumber_c(har|ode)s(?=[(])z(se|curren)t_prolog_flag(?=[(])z\bhalt\bz halt(?=[(])z (::|:|\^\^)z[{}]z(ignore|once)(?=[(])z \brepeat\bz(key)?sort(?=[(])z(>>|<<|/\\|\\\\|\\)z\bas\bz\bis\bz(=:=|=\\=|<|=<|>=|>)z=\.\.z(=|\\=)z(==|\\==|@=<|@<|@>=|@>)z (//|[-+*/])z\b(e|pi|div|mod|rem)\bz\b\*\*\bz-->z ([!;]|->)z\\+z[?@]z\^z"(\\\\|\\[^\\]|[^"\\])*"z [()\[\],.|]z[a-z][a-zA-Z0-9_]*' quoted_atomz''rz+\\([\\abfnrtv"\']|(x[a-fA-F0-9]+|[0-7]+)\\)z [^\\'\n]+z\\z(el)?if(?=[(])rz(e(lse|ndif))(?=[.])z!(category|object|protocol)(?=[(])entityrelationsz'(end_(category|object|protocol))(?=[.])z!(public|protected|private)(?=[(])z%e(n(coding|sure_loaded)|xport)(?=[(])z in(clude|itialization|fo)(?=[(])z/(built_in|dynamic|synchronized|threaded)(?=[.])zz(alias|d(ynamic|iscontiguous)|m(eta_(non_terminal|predicate)|ode|ultifile)|s(et_(logtalk|prolog)_flag|ynchronized))(?=[(])z op(?=[(])z:(c(alls|oinductive)|module|reexport|use(s|_module))(?=[(])z[a-z][a-zA-Z0-9_]*(?=[(])z[a-z][a-zA-Z0-9_]*(?=[.])zH(complements|extends|i(nstantiates|mp(lements|orts))|specializes)(?=[(])z([)]\.)z(::))rr;r9r<cnd|vryd|vryd|vrytjd|tjryy)Nz :- object(g?z :- protocol(z :- category(z ^:-\s[a-z]g?g)researchMrs rrzLogtalkLexer.analyse_text+s= 4  t # t # YY}dBDD 1rN)r r!r"r#r$urlr%r&r'r rrr r+r,r-r r4rrr Escaper5rrrrrrYs D CkG+&I!"IH +{ 3H  H  ( H DMH TNH & !H  $H &** %H  +H ,V 4H &t}} 5!H $&w /%H ( ()H ,w G1H 4I' R5H 8LW U9H :;G D;H >? H?H @:7 CAH B;G DCH D6w ?EH H? HIH L9' BMH P^_f gQH R!' *SH V.w 7WH X,W 5YH \*7 3]H ^A' J_H `jkr saH d27 ;eH hST[ \iH lcdk lmH p? HqH tI' RuH x6w ?yH z:7 C{H |;G D}H @G PAH Dkls tEH H (IH L0 9MH N$W -OH P$W -QH R27 ;SH TNw WUH X=g FYH Z [H ^$W -_H `3G pygments.lexerrrpygments.tokenrrrrr r r r __all__r rrrrrFsJ / . )B*BJ\:\r