3
V'ícâJ ã @ s d Z ddlZddlmZmZmZmZmZmZm Z m
Z
ddlmZm
Z
mZmZmZmZmZmZmZ ddddgZG d d deZG d
d deZdd ZdddZG dd deZG dd deZdS )zÃ
pygments.lexers.erlang
~~~~~~~~~~~~~~~~~~~~~~
Lexers for Erlang.
:copyright: Copyright 2006-2022 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 { @ sN e Zd ZdZdZdZdgZddddgZd gZdÙZ dÚZ
dZdÛZd¢Z
d£Zd¤Zd¥Zd¦Zd§Zd¨e d© e d© e d© e dª Zd«e d© e
d¬ ZdZd®efd¯eeefee d°d±efee
d°d±ejfeed°d±ejfd²ed³feefd´e dµfd¶ej!fd·ej!fd¸e
d¹ eej"efdºe
d» eej#eefd¼e d½ e$j%fd¾e$j%fd¿e$j&fdÀefeej'fe
efdÁe ej(fdÂe dà e j)fdÄe
dÅ e
dÆ ej!fdÇej*fdÈedÉfgee j+fd´e dÊfdËe j,fdÌe fdÍe fgdÎe d¬ eej-eeej(dÊfdÏe d¬ eej-eeej!dÊfe
ej-dÊfge.dÐdÑedÒfdÓedÒfdÔedÊfge.dÐdÕedÊfdÖedÊfgd×Z/dØS )Ür zT
For the Erlang functional programming language.
.. versionadded:: 0.9
ZErlangzhttps://www.erlang.org/Zerlangz*.erlz*.hrlz*.esz *.escriptz
text/x-erlangÚ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(?:ú)z(?:[2-9]|[12][0-9]|3[0-6])z\s+z (%.*)(\n)z\b)Úsuffixz^-Ú directiveú"Ústringz<<z>>ú(z)(:)z
(?:^|(?<=:))(z
)(\s*)(\()z[+-]?z
#[0-9a-zA-Z]+z[+-]?\d+z[+-]?\d+.\d+z[]\[:_@\".{}()|;,]z\?z\$(?:z|\\[ %]|[^\\])ú#z(:?\.z)?z\A#!.+\nz#\{Úmap_keyz#popz~[0-9.*]*[~#+BPWXb-ginpswx]z[^"\\~]+ú~z(define)(\s*)(\()(z(record)(\s*)(\()(Úrootz=>Úmap_valz:=z\}ú,z(?=\}))r¸ r³ r± r¶ r¹ N)r r r r r r r r r r r! r"