https://t.me/RX1948
Server : Apache
System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
User : dh_edsupp ( 6597262)
PHP Version : 8.2.26
Disable Function : NONE
Directory :  /lib/python3/dist-packages/pygments/lexers/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/pygments/lexers/__pycache__/erlang.cpython-310.pyc
o

���aK�@s�dZddlZddlmZmZmZmZmZmZm	Z	ddl
mZmZm
Z
mZmZmZmZmZmZmZgd�Ze�d�ZGdd�de�ZGd	d
�d
e�Zdd�Zddd�ZGdd�de�ZGdd�de�ZdS)z�
    pygments.lexers.erlang
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexers for Erlang.

    :copyright: Copyright 2006-2021 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�
Whitespace)�ErlangLexer�ErlangShellLexer�ElixirConsoleLexer�ElixirLexerz.*?
c@sFeZdZdZdZdgZgd�ZdgZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdededededZde
dedZdZdefdeee�feedd�efee	dd�ejfeedd�ejfdedfe
efdedfdej fdej fd ed!eej!e�fd"ed#eej"ee�fd$ed%e#j$fd&e#j$fd'e#j%fd(efe
ej&feefd)eej'fd*ed+ej(fd,ed-ed.ej fd/ej)fd0ed1fgeej*fded2fd3ej+fd4efd5efgd6edeej,eeej'�d2fd7edeej,eeej �d2feej,d2fge-d8�d9ed:fd;ed:fd<ed2fge-d8�d=ed2fd>ed2fgd?�Z.d@S)Arz�
    For the Erlang functional programming language.

    Blame Jeremy Thurgood (http://jerith.za.net/).

    .. versionadded:: 0.9
    �Erlang�erlang)z*.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])�\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)/�__name__�
__module__�__qualname__�__doc__�name�aliases�	filenames�	mimetypes�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_rerrr
rrr
�Builtinr�Wordrr�Label�	Namespace�Functionr�Integer�Float�Variable�Constant�Char�Hashbang�Escape�Interpol�Entityr�tokens�r�r��8/usr/lib/python3/dist-packages/pygments/lexers/erlang.pyrs�$
�� �
�
�
���
�rc@s8eZdZdZdZdgZdgZdgZe�	d�Z
dd�Zd	S)
rzM
    Shell sessions in erl (for Erlang code).

    .. versionadded:: 1.1
    zErlang erl session�erlz*.erl-shztext/x-erl-shellsessionz(?:\([\w@_.]+\))?\d+>(?=\s|\Z)c		cs��tdi|j��}d}g}t�|�D]X}|��}|j�|�}|durA|��}|�t	|�dt
j|d|�fgf�|||d�7}q|rRt||�
|��EdHd}g}|�d�ra|��t
j|fVq|��t
j|fVq|rzt||�
|��EdHdSdS)N�r�*r�)r�options�line_re�finditer�group�
_prompt_re�matchr�append�lenr�Promptr�get_tokens_unprocessed�
startswith�start�	Traceback�Output)	�self�text�erlexer�curcode�
insertionsr��line�mrr�r�r�r��s6�
�
�
��z'ErlangShellLexer.get_tokens_unprocessedN)r�r�r�r�r�r�r�r��re�compiler�r�r�r�r�r�r�s
rcCsDi}d|f|ftd�d|fd|ft|�dftd�g|d|<|S)N�	[^#%s\\]+�escapes�\\.z(%s)r��interpol�string_)rr)r��symbol�token�statesr�r�r��gen_elixir_string_rules�s�r
TcCsX|rd|f|ftd�d|fd|f|dftd�gSd|f|fd|fd|f|dfgS)Nrrrz%s[a-zA-Z]*r�rz[^%s\\]+)r)�term�
term_classrrr�r�r��gen_elixir_sigstr_rules�s�	�rc@s�eZdZdZdZgd�Zgd�ZdgZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdd�Zdd�Zd�dd�eD��Zd�dd�eD��Zd�dd�eD��ZdeeefZd�dd�eD��ZdZdeZddeiZdeeefZd Zd!Z d"Z!d#Z"gd$e#f�d%e$j%f�d&e e&e'j(e'j)e*j+e'j)�f�d&e!e&e'j(e'j)�f�d&e"e&e'j(e'j)�f�d'e'j(f�d(e'j,f�d)e-f�d*ee'j,f�d*ee'j,f�d+e'j,d,f�d-e'j,d.f�d/eefe&e'j,e.�f�d0ee/j0f�ee/f�d1efe&e.e/j1�f�ee-f�ee-f�ee.f�d2e/j2f�ee-f�d3e*j3f�d4e*j4f�d5e*j+f�d6e*j5f�d7e*j6f�d8e&e'j7e#�d9f�d:e&e'j7e#�d;f�d<e'j8d=f�d>e'j%d?f�e9d@��dAe.dBf�dCe.dDf�dEe&e#e'j7�dFfe9dG�gdHe'j7dFfe9dG�gdIe'j7fe9dJ�dKe'j7fdLe'j7fe9dM�gdNe'j7fdKe'j7fdLe#fge e&e'j)e*j+e'j)�fe!e'j)fe"e'j)fgdOe'j:dPfgdQe'j:dFfe9dR�ge9dR�d*e.dSfdTe.dSfdQe.dFfge9dR�dUe.dFfdVe.dFfge9dR�dQe.dFfgdW�Z;e;�<e=dXd<e'j8��e;�<e=dYd>e'j%��e;�<e=dZd<e'j,��e;�<e=d[d>e'j,��e;�<e��d\S)]rzY
    For the `Elixir language <http://elixir-lang.org>`_.

    .. versionadded:: 1.5
    �Elixir)�elixir�ex�exs)z*.exz*.eexz*.exsz*.leexz
text/x-elixir)�fn�dorr�else�rescuer)r�r�r�r&�in)
rr�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��[�]ccs��t�||�D]p\}}}|turq||jvr|t|fVq||jvr)|tj|fVq||jvr5|t|fVq||j	vrB|tj
|fVq||jvrO|tj|fVq||j
vr\|tj|fVq||jvrj|tjj|fVq|||fVq|||fVqdS�N)rr�r
�KEYWORDr�KEYWORD_OPERATORrr��BUILTIN�BUILTIN_DECLARATION�Declaration�BUILTIN_NAMESPACEr��CONSTANTr��
PSEUDO_VARr��Pseudo)r�r��indexr�valuer�r�r�r�
s(�






�z"ElixirLexer.get_tokens_unprocessedc	
Cs`gd�}ddg}tj}dgi}|D]e\}}|dd|ft|tj�|d|dffd|ft|tj�|d|d	ffg7<d
|dftd�g||d<d|d
tttj�dftd�g||d<d|d
tttj�dftd�g||d	<q|D]4\}}}}|dd|||dfd|||d	fg7<t|||�||d<t|||dd�||d	<qy|S)N))�\{r��}�cb)z\[�\]rV�sb)z\(z\)r��pa)r;r<r<�ab)r?r?r?�slas)�\|r[r��pipe)r�r�r��quot)�'r^r^�apos)z"""�triquot)z'''�triapos�sigilsz(~[a-z])(%s)z-endz-intpz(~[A-Z])(%s)z-no-intpz	[a-zA-Z]+r�z^(\s*)(r��heredoc_interpol�heredoc_no_interpolz~[a-z]z~[A-Z]F)r)r�Otherr�Heredocrrrr)	�terminators�	triquotesrrrr��lterm�rterm�rterm_classr�r�r��gen_elixir_sigil_rules s@�������

��z"ElixirLexer.gen_elixir_sigil_rulesr�cc��|]}t�|�VqdSrG�r�escape��.0�sr�r�r��	<genexpr>T��zElixirLexer.<genexpr>ccrmrGrnrpr�r�r�rsUrtccrmrGrnrpr�r�r�rsVrtz(?:%s|%s|%s)ccrmrGrnrpr�r�r�rsXrtz\wz(?:\.\.\.|[a-z_]%s*[!?]?)z%[A-Z]%(alnum)s*(?:\.[A-Z]%(alnum)s*)*�alnumz(?:\.\.\.|<<>>|%\{\}|%|\{\})z(\\x\{)([\da-fA-F]+)(\})z(\\x[\da-fA-F]{1,2})z(\\[abdefnrstv])r�z#.*$z(\?)z\?\\?.z:::z::rCz:"�string_double_atomz:'�string_single_atomz(%s|%s)(:)(?=\s|\n)�@z	(%%?)(%s)z&\dz0b[01]+z0o[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_doubler^�
string_singlerbz%\{r�rS�tuplez^(\s*)(""")r�rcz^\s*'''z	[^#\\\n]+rrz\n+rz[^\\\n]+r��interpol_stringr�r�r�r�r�r�)r�ryrzrcrdrrr~r�r�r}�double�single�double_atom�single_atomN)>r�r�r�r�r�r�r�r�rHrIrJrKrMrNrO�
OPERATORS3�
OPERATORS2�
OPERATORS1�PUNCTUATIONr�rl�join�op3_re�op2_re�op1_re�ops_re�punctuation_reru�name_re�
modname_re�complex_name_re�special_atom_re�long_hex_char_re�hex_char_re�escape_char_rerr
�Singlerrr�r�r�Hex�Symbolrrr
�	Attribute�Classr��Bin�Octr�r�rf�Doublerr�r��updater
r�r�r�r�r�s<4�������
�������
�
�

��� �!�$�%�&�'�(�+�,�-�.�/�2��4��
6�
7�9�;�<�?�
�����
�
�����prc@s2eZdZdZdZdgZdgZe�d�Z	dd�Z
dS)	ra8
    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

    .. versionadded:: 1.5
    zElixir iex session�iexztext/x-elixir-shellsessionz,(iex|\.{3})((?:\([\w@_.]+\))?\d+|\(\d+\))?> c	cs4�tdi|j��}d}d}g}t�|�D]t}|��}|�d�r<d}|�t|�dtj	|dd�fgf�||dd�7}q|j
�|�}|durgd}|��}	|�t|�dtj
|d|	�fgf�|||	d�7}q|rxt||�|��EdHd}g}|r}tj	ntj}
|��|
|fVq|r�t||�|��EdHdSdS)Nr�Fz** Tr���r�)rr�r�r�r�r�r�r�r�Errorr�r�rr�rr�r�r�)r�r��exlexerr��in_errorrr�rrrrr�r�r�r��sD�

�
�

�
��z)ElixirConsoleLexer.get_tokens_unprocessedN)r�r�r�r�r�r�r�rrr�r�r�r�r�r�r�s
r)T)r�r�pygments.lexerrrrrrrr�pygments.tokenr	r
rrr
rrrrr�__all__rr�rrr
rrrr�r�r�r��<module>s
$0
)
{

https://t.me/RX1948 - 2025