Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-312.pyc

�

4Μg=���ddlZddlZddlZddlmZmZmZmZddlm	Z	m
Z
ddlmZede
�Zeje�Zdee
deedfd	efd
�Zej*d��d
e
d	efd��Zde
d	efd�Zy)�N)�NewType�Optional�Tuple�cast)�
specifiers�version��Requirement�NormalizedExtra�requires_python�version_info.�returnc��|�ytj|�}tjdj	tt|���}||vS)a�
    Check if the given Python version matches a "Requires-Python" specifier.

    :param version_info: A 3-tuple of ints representing a Python
        major-minor-micro version to check (e.g. `sys.version_info[:3]`).

    :return: `True` if the given Python version satisfies the requirement.
        Otherwise, return `False`.

    :raises InvalidSpecifier: If `requires_python` has an invalid format.
    T�.)r�SpecifierSetr�parse�join�map�str)rr
�requires_python_specifier�python_versions    �H/usr/local/lib/python3.12/site-packages/pip/_internal/utils/packaging.py�check_requires_pythonrsH����� *� 7� 7�� H���]�]�3�8�8�C��\�,B�#C�D�N��6�6�6�i)�maxsize�
req_stringc��t|�S)z5Construct a packaging.Requirement object with cachingr	)rs r�get_requirementr%s���z�"�"r�extrac�h�tttjdd|�j	��S)aDConvert an arbitrary string to a standard 'extra' name

    Any runs of non-alphanumeric characters are replaced with a single '_',
    and the result is always lowercased.

    This function is duplicated from ``pkg_resources``. Note that this is not
    the same to either ``canonicalize_name`` or ``_egg_link_name``.
    z[^A-Za-z0-9.-]+�_)rr�re�sub�lower)rs r�
safe_extrar%0s(�������(9�3��!F�!L�!L�!N�O�Or)�	functools�loggingr"�typingrrrr�pip._vendor.packagingrr�"pip._vendor.packaging.requirementsr
rr�	getLogger�__name__�logger�int�boolr�	lru_cacherr%�rr�<module>r2s�����	�1�1�5�:��+�S�1��	��	�	�8�	$��7��c�]�7�27��S��/�7�	�7�.����T�"�#��#��#�#�#�	P�c�	P�o�	Pr

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists