Your IP : 216.73.216.213
B
ɽ�\�I � @ s� d Z ddlZddlmZmZmZmZmZmZm Z ddl
mZmZm
Z
mZmZmZmZmZmZ ddddgZe�d �ZG d
d� de�ZG dd� de�Zdd
� Zddd�ZG dd� de�ZG dd� de�ZdS )z�
pygments.lexers.erlang
~~~~~~~~~~~~~~~~~~~~~~
Lexers for Erlang.
:copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�Lexer�
RegexLexer�bygroups�words�
do_insertions�include�default) �Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�Generic�ErlangLexer�ErlangShellLexer�ElixirConsoleLexer�ElixirLexerz.*?
c @ sD e Zd ZdZdZdgZddddgZdgZd Zd
Z dZ
dZd
ZdZ
dZdZdZdZde d e d e d e d Zde
d e d ZdZdefdefeedd�efee dd�ejfeedd�ejfdedfe
efded fd!ejfd"ejfd#e d$ e ej!e�fd%e d& e ej"ee�fd'e d( e#j$fd)e#j$fd*e#j%fd+efe
ej&feefd,e ej'fd-e d. ej(fd/e d0 e d1 ejfd2ej)fd3ed4fgeej*fded5fd6ej+fd7efd8efgd9e d e ej,eeej'�d5fd:e d e ej,eeej�d5feej,d5fge-d;�d<ed=fd>ed=fd?ed5fge-d;�d@ed5fdAed5fgdB�Z.dCS )Dr z�
For the Erlang functional programming language.
Blame Jeremy Thurgood (http://jerith.za.net/).
.. versionadded:: 0.9
ZErlangZerlangz*.erlz*.hrlz*.esz *.escriptz
text/x-erlang)�afterZbegin�case�catch�cond�endZfun�ifZletZof�query�receive�try�when){�absZappend_elementZapplyZatom_to_listZbinary_to_listZbitstring_to_listZbinary_to_termZbit_sizeZbump_reductionsZ byte_sizeZcancel_timerZcheck_process_codeZ
delete_moduleZ demonitorZdisconnect_nodeZdisplay�elementZerase�exit�floatZ
float_to_listZfun_infoZfun_to_listZfunction_exportedZgarbage_collect�getZget_keysZgroup_leader�hashZhdZinteger_to_listZiolist_to_binaryZiolist_sizeZis_atomZ is_binaryZis_bitstringZ
is_boolean�
is_builtinZis_floatZis_function�
is_integerZis_listZ is_numberZis_pidZis_portZis_process_aliveZ is_recordZis_referenceZis_tuple�length�linkZlist_to_atomZlist_to_binaryZlist_to_bitstringZlist_to_existing_atomZ
list_to_floatZlist_to_integerZlist_to_pidZ
list_to_tuple�load_moduleZlocaltime_to_universaltimeZ
make_tuple�md5Z md5_finalZ
md5_updateZmemoryZ
module_loadedZmonitorZmonitor_node�nodeZnodesZ open_portZphashZphash2Zpid_to_listZ
port_closeZport_commandZport_connectZport_controlZ port_callZ port_infoZport_to_listZprocess_displayZprocess_flagZprocess_infoZpurge_moduleZputZ
read_timerZref_to_list�registerZresume_process�round�sendZ
send_afterZsend_nosuspendZ
set_cookieZ
setelement�size�spawnZ
spawn_linkZ
spawn_monitorZ spawn_optZsplit_binaryZstart_timerZ
statisticsZsuspend_processZsystem_flagZsystem_infoZsystem_monitorZsystem_profileZterm_to_binary�tl�traceZtrace_deliveredZ
trace_infoZ
trace_pattern�truncZ
tuple_sizeZ
tuple_to_listZuniversaltime_to_localtime�unlink�
unregisterZwhereisz1(\+\+?|--?|\*|/|<|>|/=|=:=|=/=|=<|>=|==?|<-|!|\?))�andZandalsoZbandZbnotZborZbslZbsrZbxorZdiv�not�orZorelse�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%.*\nz\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(?=\}))rF rA r? rD rG N)/�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames� mimetypes�keywords�builtinsZ operatorsZword_operatorsZatom_reZvariable_reZesc_char_reZesc_octal_reZ
esc_hex_reZesc_ctrl_reZ escape_reZmacro_reZbase_rer r
r r r
�Builtinr �Wordr r ZLabelr � NamespaceZFunctionr �Integer�Float�Variable�Constant�CharZHashbang�Escape�Interpol�Entityr �tokens� r_ r_ �G/opt/alt/python37/lib/python3.7/site-packages/pygments/lexers/erlang.pyr sv $
c @ s8 e Zd ZdZdZdgZdgZdgZe� d�Z
dd� Zd S )
r zM
Shell sessions in erl (for Erlang code).
.. versionadded:: 1.1
zErlang erl sessionZerlz*.erl-shztext/x-erl-shellsessionz
\d+>(?=\s|\Z)c
c s t f | j�}d}g }x�t�|�D ]�}|�� }| j�|�}|d k r~|�� }|�t |�dt
j|d |� fgf� |||d � 7 }q |r�xt||�
|��D ]
} | V q�W d}g }|�d�r�|�� t
j|fV q |�� t
j|fV q W |�rxt||�
|��D ]
} | V q�W d S )N� r �*)r �options�line_re�finditer�group�
_prompt_re�matchr �append�lenr �Promptr �get_tokens_unprocessed�
startswith�start� Traceback�Output)
�self�textZerlexer�curcode�
insertionsrh �line�mr �itemr_ r_ r` rl � s0
z'ErlangShellLexer.get_tokens_unprocessedN)rI rJ rK rL rM rN rO rP �re�compilerg rl r_ r_ r_ r` r � s
c C sD i }d|f |ft d�d|fd|f t|�dft d�g|d| <