
    5hJ                         S r SSKrSSKJrJrJrJrJrJrJ	r	J
r
  SSKJrJrJrJrJrJrJrJrJr  / SQr " S S\5      r " S S	\5      rS
 rSS jr " S S\5      r " S S\5      rg)z
pygments.lexers.erlang
~~~~~~~~~~~~~~~~~~~~~~

Lexers for Erlang.

:copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)Lexer
RegexLexerbygroupswordsdo_insertionsincludedefaultline_re)	CommentOperatorKeywordNameStringNumberPunctuationGeneric
Whitespace)ErlangLexerErlangShellLexerElixirConsoleLexerElixirLexerc                   H   \ rS rSrSrSrSrS/r/ SQrS/r	Sr
S	rS
rSrSrSrSrSrSrSrSrS\-   S-   \-   S-   \-   S-   \-   S-   rS\-   S-   \-   S-   rSrS\4S\" \\5      4\" \SS9\4\" \SS9\R<                  4\" \SS9\R@                  4S\!S4\\4S\"S 4S!\RF                  4S"\RF                  4S#\-   S$-   \" \RH                  \!5      4S%\-   S&-   \" \RJ                  \\!5      4S'\-   S(-   \&RN                  4S)\&RN                  4S*\&RP                  4S+\!4\\RR                  4\\4S,\-   \RT                  4S-\-   S.-   \"RV                  4S/\-   S0-   \-   S1-   \RF                  4S2\RX                  4S3\!S44/\\"RZ                  4S\"S54S6\"R\                  4S7\"4S8\"4/S9\-   S-   \" \R^                  \\!\RT                  5      S54S:\-   S-   \" \R^                  \\!\RF                  5      S54\\R^                  S54/\0" S;5      S<\!S=4S>\!S=4S?\!S54/\0" S;5      S@\!S54SA\!S54/SB.r1SCr2gD)Er      z1
For the Erlang functional programming language.
Erlanghttps://www.erlang.org/erlang)z*.erlz*.hrlz*.esz	*.escriptztext/x-erlangz0.9)afterbegincasecatchcondendfunifletofqueryreceivetrywhen){absappend_elementapplyatom_to_listbinary_to_listbitstring_to_listbinary_to_termbit_sizebump_reductions	byte_sizecancel_timercheck_process_codedelete_module	demonitordisconnect_nodedisplayelementeraseexitfloatfloat_to_listfun_infofun_to_listfunction_exportedgarbage_collectgetget_keysgroup_leaderhashhdinteger_to_listiolist_to_binaryiolist_sizeis_atom	is_binaryis_bitstring
is_boolean
is_builtinis_floatis_function
is_integeris_list	is_numberis_pidis_portis_process_alive	is_recordis_referenceis_tuplelengthlinklist_to_atomlist_to_binarylist_to_bitstringlist_to_existing_atomlist_to_floatlist_to_integerlist_to_pidlist_to_tupleload_modulelocaltime_to_universaltime
make_tuplemd5	md5_final
md5_updatememorymodule_loadedmonitormonitor_nodenodenodes	open_portphashphash2pid_to_list
port_closeport_commandport_connectport_control	port_call	port_infoport_to_listprocess_displayprocess_flagprocess_infopurge_moduleput
read_timerref_to_listregisterresume_processroundsend
send_aftersend_nosuspend
set_cookie
setelementsizespawn
spawn_linkspawn_monitor	spawn_optsplit_binarystart_timer
statisticssuspend_processsystem_flagsystem_infosystem_monitorsystem_profileterm_to_binarytltracetrace_delivered
trace_infotrace_patterntrunc
tuple_sizetuple_to_listuniversaltime_to_localtimeunlink
unregisterwhereisz1(\+\+?|--?|\*|/|<|>|/=|=:=|=/=|=<|>=|==?|<-|!|\?))andandalsobandbnotborbslbsrbxordivnotororelseremxorz(?:[a-z]\w*|'[^\n']*[^\\]')z(?:[A-Z_]\w*)z[bdefnrstv\'"\\]z[0-7][0-7]?[0-7]?z%(?:x[0-9a-fA-F]{2}|x\{[0-9a-fA-F]+\})z
\^[a-zA-Z]z(?:\\(?:|z))(?:)z(?:[2-9]|[12][0-9]|3[0-6])\s+z	(%.*)(\n)z\b)suffixz^-	directive"string<<>>(z)(:)z(?:^|(?<=:))(z
)(\s*)(\()z[+-]?z#[0-9a-zA-Z]+z[+-]?\d+z[+-]?\d+.\d+z[]\[:_@\".{}()|;,]z\?z\$(?:z|\\[ %]|[^\\])#z(:?\.z)?z\A#!.+\n#\{map_key#popz~[0-9.*]*[~#+BPWXb-ginpswx]z[^"\\~]+~z(define)(\s*)(\()(z(record)(\s*)(\()(root=>map_valz:=\},(?=\}))r   r   r   r   r    N)3__name__
__module____qualname____firstlineno____doc__nameurlaliases	filenames	mimetypesversion_addedkeywordsbuiltins	operatorsword_operatorsatom_revariable_reesc_char_reesc_octal_re
esc_hex_reesc_ctrl_re	escape_remacro_rebase_rer   r   r   r   r   r   Builtinr   Wordr   r   Label	NamespaceFunctionr   IntegerFloatVariableConstantCharHashbangEscapeInterpolEntityr   tokens__static_attributes__r       a/var/www/html/cementerio_25MayoBackend/env/lib/python3.13/site-packages/pygments/lexers/erlang.pyr   r      s     D
#CjG7I !IMH
H< EIN
 -G"K%K'L9JKK',\9$>zI$N{Z[``Ik!$&w.t3H+G Z 8GZ898E*G48E*DLL9>%0(--@K-!68$DJJDJJ7]V#Xdnnk%JKw&6dmmZ=?"22FNNC&..)fll+"K0$--(dO8^T]]+i 116;;?'\("7*50$**= '**+ [),;
@ &66"+V__=&!6N
 #8+D0dkk:{DMMJFT"8+D0dkk:{DJJGQdkk6*
 FOK+K+K(	
 FO;'V,
i9Fr   r   c                   `    \ rS rSrSrSrS/rS/rS/rSr	Sr
\R                  " S	5      rS
 rSrg)r      z*
Shell sessions in erl (for Erlang code).
zErlang erl sessionerlz*.erl-shztext/x-erl-shellsessionr   z1.1z(?:\([\w@_.]+\))?\d+>(?=\s|\Z)c           	   #     #    [        S0 U R                  D6nSn/ n[        R                  " U5       GH  nUR	                  5       nU R
                  R                  U5      nUbJ  UR                  5       nUR                  [        U5      S[        R                  US U 4/45        X6US  -  nM|  U(       a'  [        UUR                  U5      5       S h  vN   Sn/ nUR                  S5      (       a%  UR                  5       [        R                   U4v   M  UR                  5       [        R"                  U4v   GM     U(       a$  [        UUR                  U5      5       S h  vN   g g  N N7f)N r   *r   )r   optionsr
   finditergroup
_prompt_rematchr"   appendlenr   Promptr   get_tokens_unprocessed
startswithstart	TracebackOutput)	selftexterlexercurcode
insertionsr   linemr"   s	            r   r  'ErlangShellLexer.get_tokens_unprocessed   sP    --
%%d+E;;=D%%d+A}eeg!!3w<%&Tc
$C#D#F G:%,Z-4-K-KG-T V V V G!#J??3''++-):):D@@++-==# ,$ $Z%,%C%CG%LN N N VNs%   CE/E+BE/$E-%E/-E/r   N)r   r   r   r   r   r   r   r   r   r   r   recompiler   r  r   r   r   r   r   r      sC      DgGI*+I
#CM=>JNr   r   c                 x    0 nSU S3U4[        S5      SU4SU S3[        U5      S4[        S5      /US	U -   '   U$ )
N[^#\\]+escapes\\.r   r   r   interpolstring_)r   r   )r   symboltokenstatess       r   gen_elixir_string_rulesr     s]    Fxt	e$		fXQ%&1
 F9t Mr   c                     U(       a'  SU S3U4[        S5      SU4U  S3US4[        S5      /$ SU S3U4SU4U  S3US4/$ )	Nr  r  r  r  z	[a-zA-Z]*r   r  z[^)r   )term
term_classr  r  s       r   gen_elixir_sigstr_rulesr      s}    J<t$e,IUOi %0J
 	
 :,d#U+UOi %0
 	
r   c                   	   \ rS rSrSrSrSr/ SQr/ SQrS/r	Sr
S	rS
rSrSrSrSrSrSrSrSrSrS rS rSR1                  S \ 5       5      rSR1                  S \ 5       5      rSR1                  S \ 5       5      rS\ S\ S\ S3rSR1                  S \ 5       5      rSrS\ S3rS \ S!\ S"3r S\ S\  S\ S3r!S#r"S$r#S%r$S&r%/ S'\&4PS(\'RP                  4PS)\#-   \)" \*RV                  \*RX                  \-R\                  \*RX                  5      4PS)\$-   \)" \*RV                  \*RX                  5      4PS)\%-   \)" \*RV                  \*RX                  5      4PS*\*RV                  4PS+\*R^                  4PS,\04PS-\"-   \*R^                  4PS-\!-   \*R^                  4PS.\*R^                  S/4PS0\*R^                  S14PS2\" S\! S33\)" \*R^                  \15      4PS4\-   \2Rf                  4P\\24PS5\  S3\)" \1\2Rh                  5      4P\\04P\\04P\\14PS6\2Rj                  4P\\04PS7\-Rl                  4PS8\-Rn                  4PS9\-R\                  4PS:\-Rp                  4PS;\-Rr                  4PS<\)" \*Rt                  \&5      S=4PS>\)" \*Rt                  \&5      S?4PS@\*Rv                  SA4PSB\*RP                  SC4P\<" SD5      PSE\1SF4PSG\1SH4PSI\)" \&\*Rt                  5      SJ4\<" SK5      /SL\*Rt                  SJ4\<" SK5      /SM\*Rt                  4\<" SN5      SO\*Rt                  4SP\*Rt                  4\<" SQ5      /SR\*Rt                  4SO\*Rt                  4SP\&4/\#\)" \*RX                  \-R\                  \*RX                  5      4\$\*RX                  4\%\*RX                  4/SS\*Rz                  ST4/SU\*Rz                  SJ4\<" SV5      /\<" SV5      S-\1SW4SX\1SW4SU\1SJ4/\<" SV5      SY\1SJ4SZ\1SJ4/\<" SV5      SU\1SJ4/S[.r>\>R                  \@" S\S@\*Rv                  5      5        \>R                  \@" S]SB\*RP                  5      5        \>R                  \@" S^S@\*R^                  5      5        \>R                  \@" S_SB\*R^                  5      5        \>R                  \" 5       5        S`rAga)br      z
For the Elixir language.
Elixirhttps://elixir-lang.org)elixirexexs)z*.exz*.eexz*.exsz*.leexztext/x-elixir1.5)fndor"   r   elserescuer    )r   r   r   r*   in)r   r!   forr$   unlessr)   r(   raisequoteunquoteunquote_splicingthrowsuper)defdefp	defmoduledefprotocoldefmacro	defmacropdefdelegatedefexception	defstructdefimpldefcallback)importrequireusealias)niltruefalse)_
__MODULE____DIR____ENV__
__CALLER__)z<<<z>>>z|||z&&&z^^^z~~~z===z!==z~>>z<~>z|~>z<|>)z==z!=z<=z>=z&&z||z<>z++z--z|>z=~z->z<-r   .=z~>z<~)	<>+-r   /!^&)z\\r   r   r   r   r   :;r   []c              #     #    [         R                  " X5       GH!  u  p#nU[        L Ga
  X@R                  ;   a  U[        U4v   M-  X@R
                  ;   a  U[        R                  U4v   MS  X@R                  ;   a  U[        U4v   Mo  X@R                  ;   a  U[        R                  U4v   M  X@R                  ;   a  U[        R                  U4v   M  X@R                  ;   a  U[        R                  U4v   M  X@R                  ;   a"  U[        R                   R"                  U4v   GM  X#U4v   GM  X#U4v   GM$     g 7fN)r   r  r   KEYWORDr   KEYWORD_OPERATORr   r   BUILTINBUILTIN_DECLARATIONDeclarationBUILTIN_NAMESPACEr   CONSTANTr   
PSEUDO_VARr   Pseudo)r  r	  indexr  values        r   r  "ElixirLexer.get_tokens_unprocessed  s    #-#D#DT#PE%}LL(%//33355ll*%//666!4!4e;;444!2!2E99mm+55oo-!4!4e;;--E))' $Qs   D>E c            
         / SQn SS/n[         R                  nS/ 0nU H  u  pEUS==   SU S3[        U[         R                  5      US-   US-   44S	U S3[        U[         R                  5      US-   US
-   44/-  ss'   SUS4[	        S5      /X5S-   '   SU-   S-   [        [
        [         R                  5      S4[        S5      /X5S-   '   SU-   S-   [        [
        [         R                  5      S4[        S5      /X5S
-   '   M     U  HF  u  pgpUS==   SU-   X%S-   4SU-   X%S
-   4/-  ss'   [        XxU5      X5S-   '   [        XxUSS9X5S
-   '   MH     U$ )N))\{r   }cb)z\[\]rm  sb)z\(z\)r   pa)rO  rP  rP  ab)rS  rS  rS  slas)\|rr  r   pipe)r   r   r   quot)'ru  ru  apos)z"""triquot)z'''triapossigilsz	(~[a-z])(r   z-endz-intpz	(~[A-Z])(z-no-intpz	[a-zA-Z]+r   z^(\s*)(heredoc_interpolheredoc_no_interpolz~[a-z]z~[A-Z]F)r  )r   Otherr   Heredocr	   r   r   r   )	terminators	triquotesr  r  r  r   ltermrtermrterm_classs	            r   gen_elixir_sigil_rules"ElixirLexer.gen_elixir_sigil_rules  s   	
 )*=>	B#JD8dV1%xv~~'FF]D7N35dV1%xv~~'FF]D:$568!  uf-%F&=!
 d"S((:v~~*NPVW*+&F'>"
 d"C'*fnn)MvV-.)F*$%! $* 0;+E+8U"E'>:U"E*+<=! 
 (EB '>" (EER *$% 0; r   r   c              #   L   #    U H  n[         R                  " U5      v   M     g 7fr\  r  escape.0ss     r   	<genexpr>ElixirLexer.<genexpr>O       7JqbiillJ   "$c              #   L   #    U H  n[         R                  " U5      v   M     g 7fr\  r  r  s     r   r  r  P  r  r  c              #   L   #    U H  n[         R                  " U5      v   M     g 7fr\  r  r  s     r   r  r  Q  r  r  r   r   c              #   L   #    U H  n[         R                  " U5      v   M     g 7fr\  r  r  s     r   r  r  S  s     @KqbiillKr  z\wz(?:\.\.\.|[a-z_]z*[!?]?)z[A-Z]z*(?:\.[A-Z]z*)*z(?:\.\.\.|<<>>|%\{\}|%|\{\})z(\\x\{)([\da-fA-F]+)(\})z(\\x[\da-fA-F]{1,2})z(\\[abdefnrstv])r   z#.*$z(\?)z\?\\?.z:::z::rW  z:"string_double_atomz:'string_single_atomr   z)(:)(?=\s|\n)@z(%?)(z&\dz0b[01]+z0o[0-7]+z0x[\da-fA-F]+z)\d(_?\d)*\.\d(_?\d)*([eE][-+]?\d(_?\d)*)?z	\d(_?\d)*z
(""")(\s*)heredoc_doublez(''')(\s*)$heredoc_singler   string_doubleru  string_singlery  z%\{r   rj  tuplez^(\s*)(""")r   rz  z^\s*'''z	[^#\\\n]+r  r  z\n+r  z[^\\\n]+r   interpol_stringr   r   r   r   r   r   )r   r  r  rz  r{  r  r  r  r   r   r  doublesingledouble_atomsingle_atomr   N)Br   r   r   r   r   r   r   r   r   r   r   r]  r^  r_  r`  rb  rc  rd  
OPERATORS3
OPERATORS2
OPERATORS1PUNCTUATIONr  r  joinop3_reop2_reop1_reops_repunctuation_realnumname_re
modname_recomplex_name_respecial_atom_relong_hex_char_rehex_char_reescape_char_rer   r   Singler   r   r   r   r   HexSymbolr   r   r   	AttributeClassr   BinOctr   r   r}  Doubler   r   r   updater  r   r   r   r   r   r      s\    D
#C%G4I !IMEG9G
 >'HHJJJ ?JK*,2h XX7J77FXX7J77FXX7J77FF81VHAfXQ/FXX@K@@NE!%0G%E7#6JWIQzl!F81=O5O2)K(N=
Z =
gnn%=

 ''

FMMCD=
 {"fmm46=
 ~%fmm46=
 $=
 V]]#=
  H!=
& O#V]]3'=
( O#V]]3)=
* FMM#78+=
, FMM#78-=
2 /"!O#4MB463=
: G^T^^,;=
@ dOA=
B j\#Xk4::%FGC=
H XI=
J XK=
L [)M=
N T[[!O=
P XQ=
V $W=
X &**%Y=
Z vzz*[=
\ :6<<H]=
^ 6>>*_=
d HV^^Z@ "e=
h XfnnjA "i=
l 6==/2m=
n 6==/2o=
r Hs=
v [),w=
x K)y=
~ Xj&..A6J&'

 0&'

 6>>*IV^^$V^^$J
 &..)V^^$Z  
 

FMMBD&--(V]]+	
 V__&78
 FOOV,FO

 FO;	*K+K(	
 FO;'V,
 FOK(
WoF` MM)(CGH
MM)(CGH
MM)-fmmLM
MM)-fmmLM
MM(*+r   r   c                   Z    \ rS rSrSrSrS/rS/rSrSr	\
R                  " S5      rS	 rS
rg)r   i  z
For Elixir interactive console (iex) output like:

.. sourcecode:: iex

    iex> [head | tail] = [1,2,3]
    [1,2,3]
    iex> head
    1
    iex> tail
    [2,3]
    iex> [head | tail]
    [1,2,3]
    iex> length [head | tail]
    3
zElixir iex sessioniexztext/x-elixir-shellsessionr$  r(  z,(iex|\.{3})((?:\([\w@_.]+\))?\d+|\(\d+\))?> c           	   #   D  #    [        S0 U R                  D6nSnSn/ n[        R                  " U5       GH8  nUR	                  5       nUR                  S5      (       a<  SnUR                  [        U5      S[        R                  US S 4/45        X7SS  -  nMf  U R                  R                  U5      nUbL  SnUR                  5       n	UR                  [        U5      S[        R                  US U	 4/45        X7U	S  -  nM  U(       a&  [        XRR                  U5      5       S h  vN   Sn/ nU(       a  [        R                  O[        R                   n
UR#                  5       X4v   GM;     U(       a#  [        XRR                  U5      5       S h  vN   g g  Ns N7f)Nr   Fz** Tr   r   )r   r   r
   r   r   r  r   r  r   Errorr   r   r"   r  r   r  r  r  )r  r	  exlexerr  in_errorr  r   r  r  r"   r  s              r   r  )ElixirConsoleLexer.get_tokens_unprocessed  s    --
%%d+E;;=Du%%!!3w<%&tCRy$A#B#D E9$OO))$/=$H%%'C%%s7|)*GNND#J(G'H'J KCDz)G#0&(F(Fw(O$Q Q Q"$%'
-5GMM7>>E++-44- ,. $::7CE E E QEs%   D&F (F)A,F FF F r   N)r   r   r   r   r   r   r   r   r   r   r  r  r   r  r   r   r   r   r   r     s<    "  DgG-.I
#CMKLJEr   r   )T)r   r  pygments.lexerr   r   r   r   r   r   r	   r
   pygments.tokenr   r   r   r   r   r   r   r   r   __all__r   r   r  r   r   r   r   r   r   <module>r     sy    
  - - -|* |~&Nu &NR	
"w,* w,t9E 9Er   