
    5hB2                     |    S r SSKrSSKJrJr  SSKJrJrJrJ	r	J
r
JrJrJr  SS/r " S S\5      r " S S\5      rg)	z
pygments.lexers.prolog
~~~~~~~~~~~~~~~~~~~~~~

Lexers for Prolog and Prolog-like languages.

:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)
RegexLexerbygroups)TextCommentOperatorKeywordNameStringNumberPunctuationPrologLexerLogtalkLexerc                      \ rS rSrSrSrS/r/ SQrS/rSr	Sr
S	\R                  S
4S\R                  4S\R                  4S\R"                  4S\R$                  4S\R&                  4S\R(                  4S\R*                  4S\R(                  4S\4S\4S\R.                  4S\R0                  4S\4S\4S\4S\4S\" \R:                  \5      4S\" \R<                  \\5      4S\" \R<                  \\5      4S\R0                  4S\R0                  4S \R@                  4S!\4/S"\R                  S#4S	\R                  S$4S%\R                  4S&\R                  4/S'.r!S( r"S)r#g*)+r      z
Lexer for Prolog files.
Prologprolog)z*.eclz*.prologz*.proz*.plztext/x-prologz$https://en.wikipedia.org/wiki/Prolog z/\*nested-commentz%.*z0\'.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'(?:''|[^'])*'zis\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[*/])rootr   c                     SU ;   a  gg)z,Competes with IDL and Visual Prolog on *.proz:-g      ?r    texts    a/var/www/html/cementerio_25MayoBackend/env/lib/python3.13/site-packages/pygments/lexers/prolog.pyanalyse_textPrologLexer.analyse_textR   s    4<    r   N)$__name__
__module____qualname____firstlineno____doc__namealiases	filenames	mimetypesurlversion_addedr   	MultilineSingler
   Charr   BinOctHexIntegerFloatr   DoubleAtomr   r   r   r	   	NamespaceFunctionr   Variabletokensr    __static_attributes__r   r"   r   r   r      s    DjG6I !I
0CM W&&(89W^^$fkk"$&**%

+#V^^45v||DV^^$-$78>G, hE*7OXdnnkBC dmmT846 dmmT;79>[[ @[[4==)6=Q)
V W&&/W&&0))*g''(	
W1Ffr"   c                      \ rS rSrSrSrSrS/rSS/rS/r	S	r
/ S
\S4PS\4PS\4PS\4PS\4PS\4PS\R                  4PS\R                   4PS\R"                  4PS\4PS\R&                  4PS\4PS\4PS\4PS\4PS\4PS\4PS\4PS\4PS\4PS\4PS \4PS!\4PS"\4PS#\4PS$\4PS%\4PS&\4PS'\4PS(\4PS)\4PS*\4PS+\4PS,\4PS-\4PS.\4PS/\4PS0\4PS1\4PS2\4PS3\4PS4\4PS5\4PS6\4PS7\4PS8\4PS9\4PS:\4PS;\4PS<\4PS=\4PS>\4PS?\4PS@\4PSA\4PSB\4PSC\4PSD\4PSE\4PSF\4PSG\4PSH\4PSI\4PSJ\4PSK\4PSL\4PSM\4PSN\4PSO\4PSP\4PSQ\4PSR\4PSS\4PST\4PSU\4PSV\4PSW\4PSX\4PSY\4PSZ\4PS[\4PS\\S]4PS^\S_4PS`\4S\\Sa4Sb\R.                  4Sc\4Sd\4/Se\4S^\Sa4Sb\R.                  4Sf\4Sd\4/Sg\Sh4Si\Sh4Sj\Sk4Sl\Sh4Sm\Sh4Sn\Sh4So\Sh4Sp\Sh4Sq\Sh4Sr\Sh4Ss\Sh4St\Sh4Su\Sh4/Sv\4S\4S\R                  4S\R                   4S\R"                  4S\4S\R&                  4S[\4S\\S]4S^\S_4Sw\Sh4Sx\4SZ\4S\4S\4S\4S\4/Sy.rSz rS{rg|)}r   [   z
For Logtalk source code.
Logtalkzhttp://logtalk.org/logtalkz*.lgtz	*.logtalkztext/x-logtalkz0.10z^\s*:-\s	directivez%.*?\nz/\*(.|\n)*?\*/z\nz\s+z0'[\\]?.r   r   r   z\d+\.?\d*((e|E)(\+|-)?\d+)?z([A-Z_][a-zA-Z0-9_]*)z(after|before)(?=[(])zforward(?=[(])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)?)(?=[(])za(bolish|ssert(a|z))(?=[(])z(ca(ll|tch)|throw)(?=[(])z0(fa(il|lse)|true|(instantiation|system)_error)\bzi(uninstantiation|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)(?=[(])zcompare(?=[(])z(curren|se)t_(in|out)put(?=[(])z(open|close)(?=[(])zflush_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\bzread(_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)(?=[(])znumber_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[a-z][a-zA-Z0-9_]*'quoted_atom"double_quoted_termz''r   z+\\([\\abfnrtv"\']|(x[a-fA-F0-9]+|[0-7]+)\\)z	[^\\'\n]+z\\z""z	[^\\"\n]+z(el)?if(?=[(])r   z(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(::))r   rC   rE   rA   rF   c                     SU ;   a  gSU ;   a  gSU ;   a  g[         R                  " SU [         R                  5      (       a  gg)Nz
:- object(g      ?z:- protocol(z:- category(z
^:-\s[a-z]g?g        )researchMr   s    r   r    LogtalkLexer.analyse_text4  s@    4t#t#YY}dBDD11r"   r   N)r#   r$   r%   r&   r'   r(   r,   r)   r*   r+   r-   r   r   r   r   r1   r2   r3   r	   r:   r   r   r
   Escaper;   r    r<   r   r"   r   r   r   [   s    D
CkG+&I!"IMH
+{3H
  	H

 (H
 DMH
 TNH
 &!H
 $H
 &**%H
 

+H
 ,V4H
  &t}}5!H
$ &w/%H
( ()H
, <WE-H
0 >wG1H
4 I'R5H
8 LWU9H
: ;GD;H
> ?H?H
@ :7CAH
B ;GDCH
D 6w?EH
H ?HIH
L 9'BMH
P ^_fgQH
R !'*SH
V .w7WH
X ,W5YH
\ *73]H
^ A'J_H
` z  |C  DaH
d 27;eH
h ST[\iH
l cdklmH
p ?HqH
t I'RuH
x 6w?yH
z :7C{H
| ;GD}H
@ GPAH
D klstEH
H (IH
L 09MH
N $W-OH
P $W-QH
R 27;SH
T NwWUH
X =gFYH
Z  [H
^ $W-_H
` 3G<aH
b %g.cH
d 27;eH
h 9'BiH
j ,W5kH
l *73mH
p 09qH
r '"sH
t W%uH
x X&yH
| g}H
@ %g.AH
B G$CH
F "7+GH
J $X.KH
N !OH
R  SH
V %h/WH
Z x [H
^ "_H
b (2cH
f X&gH
h '1iH
l (#mH
p XqH
t 8$uH
x XyH
| h}H
@ HAH
D T"EH
H #D)IH
J 6=)KH
N 6/0OH
V FO66";V]]K6"FO
 FO66";V]]K6"FO
 0$gv617<MN7&I17FC5wG0'6B?&Q K  MT  V\  ]7F+JGU[\)48)48#
* YZab&!$&**%

++V4%t}}5"D)6=)6/0v&hT" (DMTN5
_KFZ
r"   )r'   rH   pygments.lexerr   r   pygments.tokenr   r   r   r   r	   r
   r   r   __all__r   r   r   r"   r   <module>rP      sJ    
 /   .
)D* DNc: cr"   