Viewing File: /opt/hc_python/lib/python3.12/site-packages/packaging/__pycache__/_tokenizer.cpython-312.pyc

�

+O0h����UddlmZddlZddlZddlmZddlmZmZddl	m
Z
eGd�d��ZGd	�d
e�Z
idd�d
d�dd�dd�dd�dd�dejdej��dd�dd�dd�dd �d!ejd"ej��d#eje
j e
j"zejej$z��d$d%�d&d'�d(d)�d*d+�d,d-d.d/��Zd0ed1<Gd2�d3�Zy)4�)�annotationsN)�	dataclass)�Iterator�NoReturn�)�	Specifierc�,�eZdZUded<ded<ded<y)�Token�str�name�text�int�positionN)�__name__�
__module__�__qualname__�__annotations__���C/opt/hc_python/lib/python3.12/site-packages/packaging/_tokenizer.pyr
r
s��

�I�

�I��Mrr
c�<��eZdZdZ								d�fd�Zdd�Z�xZS)�ParserSyntaxErrorz7The provided source text could not be parsed correctly.c�L��||_||_||_t�|��y)N)�span�message�source�super�__init__)�selfrrr�	__class__s    �rrzParserSyntaxError.__init__s%�����	�������
���rc���d|jdzd|jd|jdz
zzdz}dj|j|j|g�S)N� r�~r�^z
    )r�joinrr)r�markers  r�__str__zParserSyntaxError.__str__"sV���t�y�y��|�#�c�T�Y�Y�q�\�D�I�I�a�L�-H�&I�I�C�O���}�}�d�l�l�D�K�K��@�A�Ar)rrrrrztuple[int, int]�return�None)r(r)rrr�__doc__rr'�
__classcell__)r s@rrrs7���A�����	�
��
�
�Brr�LEFT_PARENTHESISz\(�RIGHT_PARENTHESISz\)�LEFT_BRACKETz\[�
RIGHT_BRACKETz\]�	SEMICOLON�;�COMMA�,�
QUOTED_STRINGzk
            (
                ('[^']*')
                |
                ("[^"]*")
            )
        �OPz(===|==|~=|!=|<=|>=|<|>)�BOOLOPz\b(or|and)\b�INz\bin\b�NOTz\bnot\b�VARIABLEa�
            \b(
                python_version
                |python_full_version
                |os[._]name
                |sys[._]platform
                |platform_(release|system)
                |platform[._](version|machine|python_implementation)
                |python_implementation
                |implementation_(name|version)
                |extras?
                |dependency_groups
            )\b
        �	SPECIFIER�ATz\@�URLz[^ \t]+�
IDENTIFIERz\b[a-zA-Z0-9][a-zA-Z0-9._-]*\b�VERSION_PREFIX_TRAILz\.\*z\+[a-z0-9]+(?:[-_\.][a-z0-9]+)*z[ \t]+�$)�VERSION_LOCAL_LABEL_TRAIL�WS�END� dict[str, str | re.Pattern[str]]�
DEFAULT_RULESc��eZdZdZ						d
d�Zdd�Zdd�dd�Zdd�Zdd�Zd	d	d
�							dd�Z	e
j								dd��Zy	)�	Tokenizerz�Context-sensitive token parsing.

    Provides methods to examine the input stream to check whether the next token
    matches.
    c��||_|j�D��cic]\}}|tj|���c}}|_d|_d|_ycc}}w)Nr)r�items�re�compile�rules�
next_tokenr)rrrKr�patterns     rrzTokenizer.__init__bsS�����;@�;�;�=�2
�;H�-�$��D�"�*�*�W�%�%�=�2
��
�)-�����
��	2
s� Ac�H�|j|�r|j�yy)z8Move beyond provided token name, if at current position.N)�check�read)rrs  r�consumezTokenizer.consumeos���:�:�d���I�I�K�rF)�peekc�,�|j�Jd|�d|j����||jvs
Jd|����|j|}|j|j|j�}|�y|st||d|j�|_y)z�Check whether the next token has the provided name.

        By default, if the check succeeds, the token *must* be read before
        another check. If `peek` is set to `True`, the token is not loaded and
        would need to be checked again.
        zCannot check for z, already have zUnknown token name: FrT)rLrK�matchrrr
)rrrR�
expressionrTs     rrOzTokenizer.checkts������&�	
���x��t���6I�J�	
�&��t�z�z�!�B�%9�$��#B�B�!��Z�Z��%�
�� � ����d�m�m�<���=���#�D�%��(�D�M�M�B�D�O�rc�l�|j|�s|jd|����|j�S)zsExpect a certain token name next, failing with a syntax error otherwise.

        The token is *not* read.
        z	Expected )rO�raise_syntax_errorrP)rr�expecteds   r�expectzTokenizer.expect�s4��
�z�z�$���)�)�I�h�Z�*@�A�A��y�y�{�rc��|j}|�J�|xjt|j�z
c_d|_|S)z%Consume the next token and return it.N)rLr�lenr
)r�tokens  rrPzTokenizer.read�s9������� � � ��
�
��U�Z�Z��(�
�����rN)�
span_start�span_endc�r�|�|jn||�|jn|f}t||j|���)z.Raise ParserSyntaxError at the given position.)rr)rrr)rrr]r^rs     rrWzTokenizer.raise_syntax_error�sC��(�/�D�M�M�Z�%�-�D�M�M�8�
�� ���;�;��
�	
rc#��K�|j|�r|j}|j�nd}d��|�y|j|�s|jd|�d|�d|��|��|j�y�w)NzExpected matching z for z, after )r])rOrrPrW)r�
open_token�close_token�around�
open_positions     r�enclosing_tokenszTokenizer.enclosing_tokens�sz�����:�:�j�!� �M�M�M��I�I�K� �M�
�� ���z�z�+�&��#�#�$�[�M��z�l�(�6�(�S�(�
$�
�
	
�	�	��s�A6A8)rrrKrCr(r))rrr(r))rrrR�boolr(rf)rrrXrr(r
)r(r
)rrr]�
int | Noner^rgr(r)rarrbrrcrr(zIterator[None])
rrrr*rrQrOrYrPrW�
contextlib�contextmanagerrerrrrFrF[s�������0�	�

���
05��*��"&�#�
��
��	
�
�
�
�

�$������,/��<?��	���rrF)�
__future__rrhrI�dataclassesr�typingrr�
specifiersrr
�	ExceptionrrJ�VERBOSE�_operator_regex_str�_version_regex_str�
IGNORECASErDrrFrrr�<module>rss���"��	�!�%�!������B�	�B�*13���13���13��E�13��U�	13�
��13��T�
13��Z�R�Z�Z�	�	�
�
�	�13�"	�
%�#13�$
�o�%13�&	�)�'13�(
�:�)13�*�
��
�
�
	�	�
�
��+13�L������%�%�	�(D�(D�D�
�
�
�R�]�]�"��M13�T	�%�U13�V
�:�W13�X�3�Y13�Z�G�[13�\"D�
��a13�
�/�1�hh�hr
Back to Directory File Manager