MOON
Server: Apache
System: Linux server30c.hostingraja.org 3.10.0-962.3.2.lve1.5.63.el7.x86_64 #1 SMP Fri Oct 8 12:03:35 UTC 2021 x86_64
User: jibhires (1887)
PHP: 8.1.30
Disabled: show_source, system, shell_exec, passthru, exec, popen, proc_open, allow_url_fopen, symlink, escapeshellcmd, pcntl_exec
Upload Files
File: //opt/alt/python38/lib/python3.8/site-packages/babel/messages/__pycache__/jslexer.cpython-38.pyc
U

�`��,@s�dZddlmZddlZddlmZeddddd	d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/g+ed0d1�Zd2d3d4d5d6d7�Z	e�
d8ej�Ze�
d9ej�Z
e�
d:�Ze�
d;ej�Ze�
d<�Ze�
d=ej�Ze�
d>�Zed?d@�Zde�
dAej�fde�
dB�fdCe�
dD�fdEe�
dFejejB�fdGe
fdHefdIe�
dJej�fdKe�
dLej�fdMe�
dNd�eeje���fdOe�
dPej�fdQe�
dRejejB�fgZdSdT�ZdUdV�ZdWdX�Zd[dYdZ�ZdS)\z�
    babel.messages.jslexer
    ~~~~~~~~~~~~~~~~~~~~~~

    A simple JavaScript 1.5 lexer which is used for the JavaScript
    extractor.

    :copyright: (c) 2013-2021 by the Babel Team.
    :license: BSD, see LICENSE for more details.
�)�
namedtupleN)�unichr�+�-�*�%z!=z==�<�>z<=z>=�=z+=z-=z*=z%=z<<z>>z>>>z<<=z>>=z>>>=�&z&=�|z|=z&&z||�^z^=�(�)�[�]�{�}�!�--�++�~�,�;�.�:T)�key�reverse���
�
�	)�b�f�n�r�tz[\w$_][\w\d$_]*z[\w$_][\w\d$_.]*[\w\d$_.]z/=?z%/(?:[^/\\]*(?:\\.[^/\\]*)*)/[a-zA-Z]*z(\r\n|\n|\r)z\\z[a-fA-F0-9]{1,4}�Tokenztype value linenoz\s+z<!--.*Zlinecommentz//.*Zmultilinecommentz	/\*.*?\*/�dotted_name�name�numberzb(
        (?:0|[1-9]\d*)
        (\.\d+)?
        ([eE][-+]?\d+)? |
        (0x[a-fA-F0-9]+)
    )Zjsx_tagz(?:</?[^>\s]+|/>)�operatorz(%s)�template_stringz`(?:[^`\\]*(?:\\.[^`\\]*)*)`�stringzT(
        '(?:[^'\\]*(?:\\.[^'\\]*)*)'  |
        "(?:[^"\\]*(?:\\.[^"\\]*)*)"
    )cCsVg}tD]H\}}|s"|r"d|kr"q|s0|dkr0q|dkrB|s>qd}|�||f�q|S)ze
    Get a tokenization rule list given the passed syntax options.

    Internal to this module.
    �jsxr-r)r*)�_rules�append)r/�dottedr-�rules�
token_type�rule�r6�G/opt/alt/python38/lib/python3.8/site-packages/babel/messages/jslexer.py�	get_rules:sr8cCs|jdkr|jdkS|jdkS)zzA helper function that helps the tokenizer to decide if the current
    token may be followed by a division operator.
    r,)rrrrr)r*r+r.�regexp)�type�value)�tokenr6r6r7�indicates_divisionNs

r=cCs`|r |d|dkr |ddks(td��t�d|dd��}g}|j}d}|�d|�}|dkrb�q8||||��||d}|tkr�|t|�n�|dk�r&t�||d	�}|d
k	�r|��}t	|�dk�rz|t
t|d���Wntk
r�YnX|d
}qJ|||�|�
�}qJn||�n||�|d	}qJ|t	|�k�rV|||d
��d�|�S)z�Unquote a string with JavaScript rules.  The string has to start with
    string delimiters (``'``, ``"`` or the back-tick/grave accent (for template strings).)
    r���z"'`z)string provided is not properly delimitedz\1��\ZuU�N����)�AssertionError�line_join_re�subr1�find�escapes�
uni_escape_re�match�group�lenr�int�
ValueError�end�join)r.�result�add�posZ
escape_posZ	next_charZescapedZ
escaped_valuer6r6r7�unquote_stringWsD"�



rVccs�d}d}d}t|�}t|||d�}||kr�|D] \}	}
|
�||�}|dk	r.q�q.|rft�||�}d}	nt�||�}d}	|dkr�|d7}q"|��}|	dk	r�t|	||�}
t|
�}|
V|tt�	|��7}|�
�}q"dS)z�
    Tokenize JavaScript/JSX source.  Returns a generator of tokens.

    :param jsx: Enable (limited) JSX parsing.
    :param dotted: Read dotted names as single name token.
    :param template_string: Support ES6 template strings
    Frr?)r/r2r-Nr,r9)rNr8rL�division_re�regex_rerMr(r=�line_re�findallrQ)�sourcer/r2r-Z
may_dividerU�linenorQr3r4r5rLZtoken_valuer<r6r6r7�tokenize�s2r])TTT) �__doc__�collectionsr�reZ
babel._compatr�sortedrNZ	operatorsrJ�compile�UNICODEZname_reZdotted_name_rerW�DOTALLrXrY�patternrGrKr(�VERBOSE�IrR�map�escaper0r8r=rVr]r6r6r6r7�<module>s�
��



�
��	8