%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/lib/python3/dist-packages/setuptools/_vendor/packaging/__pycache__/
Upload File :
Create Path :
Current File : //usr/lib/python3/dist-packages/setuptools/_vendor/packaging/__pycache__/version.cpython-312.pyc

�


_�d�?��X�dZddlZddlZddlZddlmZmZmZmZm	Z	m
Z
ddlmZm
Z
mZmZgd�Ze
e
efZe
ee	eeffZe
eeefZe
ee	e
ee	eefe	eeffdffZe	ee	edfeeeefZeeegefZej4dgd	��Zd
eddfd
�ZGd�de�ZGd�d�ZdZ e Z!	Gd�de�Z"dede
ee#efdee	eeffd�Z$ejJd�Z&dedeefd�Z'dede	edfdee	eefdee	eefdee	eefdee	edefd�Z(y) zB
.. testsetup::

    from packaging.version import parse, Version
�N)�Any�Callable�Optional�SupportsInt�Tuple�Union�)�Infinity�InfinityType�NegativeInfinity�NegativeInfinityType)�VERSION_PATTERN�parse�Version�InvalidVersion.�_Version)�epoch�release�dev�pre�post�local�version�returnrc��t|�S)z�Parse the given version string.

    >>> parse('1.0.dev1')
    <Version('1.0.dev1')>

    :param version: The version string to parse.
    :raises InvalidVersion: When the version string is not a valid version.
    )r)rs �F/usr/lib/python3/dist-packages/setuptools/_vendor/packaging/version.pyrr+s���7���c��eZdZdZy)rz�Raised when a version string is not a valid version.

    >>> Version("invalid")
    Traceback (most recent call last):
        ...
    packaging.version.InvalidVersion: Invalid version: 'invalid'
    N)�__name__�
__module__�__qualname__�__doc__�rrrr7s��rrc��eZdZUeedfed<defd�Zdddefd�Z	dddefd�Z
dedefd�Zdddefd	�Z
dddefd
�Zdedefd�Zy)
�_BaseVersion.�_keyrc�,�t|j�S�N)�hashr&��selfs r�__hash__z_BaseVersion.__hash__Ds���D�I�I��r�otherc�`�t|t�stS|j|jkSr(��
isinstancer%�NotImplementedr&�r+r-s  r�__lt__z_BaseVersion.__lt__J�%���%��.�!�!��y�y�5�:�:�%�%rc�`�t|t�stS|j|jkSr(r/r2s  r�__le__z_BaseVersion.__le__P�%���%��.�!�!��y�y�E�J�J�&�&rc�`�t|t�stS|j|jk(Sr(r/r2s  r�__eq__z_BaseVersion.__eq__Vr7rc�`�t|t�stS|j|jk\Sr(r/r2s  r�__ge__z_BaseVersion.__ge__\r7rc�`�t|t�stS|j|jkDSr(r/r2s  r�__gt__z_BaseVersion.__gt__br4rc�`�t|t�stS|j|jk7Sr(r/r2s  r�__ne__z_BaseVersion.__ne__hr7rN)rr r!rr�__annotations__�intr,�boolr3r6�objectr9r;r=r?r#rrr%r%As���
��S��/���#��&�N�&�t�&�'�N�'�t�'�'�F�'�t�'�'�N�'�t�'�&�N�&�t�&�'�F�'�t�'rr%a�
    v?
    (?:
        (?:(?P<epoch>[0-9]+)!)?                           # epoch
        (?P<release>[0-9]+(?:\.[0-9]+)*)                  # release segment
        (?P<pre>                                          # pre-release
            [-_\.]?
            (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview))
            [-_\.]?
            (?P<pre_n>[0-9]+)?
        )?
        (?P<post>                                         # post release
            (?:-(?P<post_n1>[0-9]+))
            |
            (?:
                [-_\.]?
                (?P<post_l>post|rev|r)
                [-_\.]?
                (?P<post_n2>[0-9]+)?
            )
        )?
        (?P<dev>                                          # dev release
            [-_\.]?
            (?P<dev_l>dev)
            [-_\.]?
            (?P<dev_n>[0-9]+)?
        )?
    )
    (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))?       # local version
c��eZdZUdZej
dezdzejejz�Z	e
ed<deddfd�Z
defd	�Zdefd
�Zedefd��Zedeedffd
��Zedeeeeffd��Zedeefd��Zedeefd��Zedeefd��Zedefd��Zedefd��Zedefd��Zedefd��Zedefd��Zedefd��Z edefd��Z!edefd��Z"y)ra�This class abstracts handling of a project's versions.

    A :class:`Version` instance is comparison aware and can be compared and
    sorted using the standard Python interfaces.

    >>> v1 = Version("1.0a5")
    >>> v2 = Version("1.0")
    >>> v1
    <Version('1.0a5')>
    >>> v2
    <Version('1.0')>
    >>> v1 < v2
    True
    >>> v1 == v2
    False
    >>> v1 > v2
    False
    >>> v1 >= v2
    False
    >>> v1 <= v2
    True
    z^\s*z\s*$r&rrNc��|jj|�}|std|�d���t|j	d�rt|j	d��ndt
d�|j	d�jd�D��t|j	d�|j	d	��t|j	d
�|j	d�xs|j	d��t|j	d
�|j	d��t|j	d����|_
t|jj|jj|jj|jj|jj |jj"�|_y)aCInitialize a Version object.

        :param version:
            The string representation of a version which will be parsed and normalized
            before use.
        :raises InvalidVersion:
            If the ``version`` does not conform to PEP 440 in any way then this
            exception will be raised.
        zInvalid version: '�'rrc3�2K�|]}t|����y�wr()rA��.0�is  r�	<genexpr>z#Version.__init__.<locals>.<genexpr>�s����L�Q�#�a�&�L���r�.�pre_l�pre_n�post_l�post_n1�post_n2�dev_l�dev_nr)rrrrrrN)�_regex�searchrr�grouprA�tuple�split�_parse_letter_version�_parse_local_version�_version�_cmpkeyrrrrrrr&)r+r�matchs   r�__init__zVersion.__init__�sR�����"�"�7�+��� �#5�g�Y�a�!@�A�A�!�/4�{�{�7�/C�#�e�k�k�'�*�+���L�%�+�+�i�*@�*F�*F�s�*K�L�L�%�e�k�k�'�&:�E�K�K��<P�Q�&����H�%�u�{�{�9�'=�'W����Y�AW��&�e�k�k�'�&:�E�K�K��<P�Q�&�u�{�{�7�';�<�	
��
���M�M����M�M�!�!��M�M����M�M����M�M����M�M���

��	rc��d|�d�S)z�A representation of the Version that shows all internal state.

        >>> Version('1.0.0')
        <Version('1.0.0')>
        z
<Version('z')>r#r*s r�__repr__zVersion.__repr__�s���D�6��%�%rc�Z�g}|jdk7r|j|j�d��|jdjd�|jD���|j�1|jdjd�|jD���|j
�|jd|j
���|j�|jd|j���|j�|jd	|j���dj|�S)
zA string representation of the version that can be rounded-tripped.

        >>> str(Version("1.0a5"))
        '1.0a5'
        r�!rMc3�2K�|]}t|����y�wr(��str�rI�xs  rrKz"Version.__str__.<locals>.<genexpr>������;��c�!�f�;�rL�c3�2K�|]}t|����y�wr(rergs  rrKz"Version.__str__.<locals>.<genexpr>�s���� :�A��Q�� :�rLz.postz.dev�+)r�append�joinrrrrr�r+�partss  r�__str__zVersion.__str__�s������:�:��?��L�L�D�J�J�<�q�)�*�	���S�X�X�;�d�l�l�;�;�<��8�8���L�L���� :���� :�:�;��9�9� ��L�L�5�����,�-��8�8���L�L�4����z�*�+��:�:�!��L�L�1�T�Z�Z�L�)�*��w�w�u�~�rc�2�|jj}|S)zThe epoch of the version.

        >>> Version("2.0.0").epoch
        0
        >>> Version("1!2.0.0").epoch
        1
        )r\r)r+�_epochs  rrz
Version.epochs���m�m�)�)���
r.c�2�|jj}|S)adThe components of the "release" segment of the version.

        >>> Version("1.2.3").release
        (1, 2, 3)
        >>> Version("2.0.0").release
        (2, 0, 0)
        >>> Version("1!2.0.0.post0").release
        (2, 0, 0)

        Includes trailing zeroes but not the epoch or any pre-release / development /
        post-release suffixes.
        )r\r)r+�_releases  rrzVersion.releases��%)�M�M�$9�$9���rc�2�|jj}|S)aThe pre-release segment of the version.

        >>> print(Version("1.2.3").pre)
        None
        >>> Version("1.2.3a1").pre
        ('a', 1)
        >>> Version("1.2.3b1").pre
        ('b', 1)
        >>> Version("1.2.3rc1").pre
        ('rc', 1)
        )r\r)r+�_pres  rrzVersion.pre$s��+/�-�-�*;�*;���rc�d�|jjr|jjdSdS)z�The post-release number of the version.

        >>> print(Version("1.2.3").post)
        None
        >>> Version("1.2.3.post1").post
        1
        r	N)r\rr*s rrzVersion.post4s*��)-�
�
�(:�(:�t�}�}�!�!�!�$�D��Drc�d�|jjr|jjdSdS)z�The development number of the version.

        >>> print(Version("1.2.3").dev)
        None
        >>> Version("1.2.3.dev1").dev
        1
        r	N)r\rr*s rrzVersion.dev?s*��(,�}�}�'8�'8�t�}�}� � ��#�B�d�Brc��|jjr,djd�|jjD��Sy)z�The local version segment of the version.

        >>> print(Version("1.2.3").local)
        None
        >>> Version("1.2.3+abc").local
        'abc'
        rMc3�2K�|]}t|����y�wr(rergs  rrKz Version.local.<locals>.<genexpr>Ts����@�q�C��F�@�rLN)r\rrnr*s rrz
Version.localJs3���=�=����8�8�@�D�M�M�,?�,?�@�@�@�rc�>�t|�jdd�dS)z�The public portion of the version.

        >>> Version("1.2.3").public
        '1.2.3'
        >>> Version("1.2.3+abc").public
        '1.2.3'
        >>> Version("1.2.3+abc.dev1").public
        '1.2.3'
        rlr	r)rfrYr*s r�publiczVersion.publicXs���4�y���s�A�&�q�)�)rc���g}|jdk7r|j|j�d��|jdjd�|jD���dj|�S)a]The "base version" of the version.

        >>> Version("1.2.3").base_version
        '1.2.3'
        >>> Version("1.2.3+abc").base_version
        '1.2.3'
        >>> Version("1!1.2.3+abc.dev1").base_version
        '1!1.2.3'

        The "base version" is the public version of the project without any pre or post
        release markers.
        rrcrMc3�2K�|]}t|����y�wr(rergs  rrKz'Version.base_version.<locals>.<genexpr>zrirLrj)rrmrnrros  r�base_versionzVersion.base_versiones\�����:�:��?��L�L�D�J�J�<�q�)�*�	���S�X�X�;�d�l�l�;�;�<��w�w�u�~�rc�>�|jduxs|jduS)aTWhether this version is a pre-release.

        >>> Version("1.2.3").is_prerelease
        False
        >>> Version("1.2.3a1").is_prerelease
        True
        >>> Version("1.2.3b1").is_prerelease
        True
        >>> Version("1.2.3rc1").is_prerelease
        True
        >>> Version("1.2.3dev1").is_prerelease
        True
        N)rrr*s r�
is_prereleasezVersion.is_prerelease~s!���x�x�t�#�;�t�x�x�t�';�;rc��|jduS)z�Whether this version is a post-release.

        >>> Version("1.2.3").is_postrelease
        False
        >>> Version("1.2.3.post1").is_postrelease
        True
        N)rr*s r�is_postreleasezVersion.is_postrelease�s���y�y��$�$rc��|jduS)z�Whether this version is a development release.

        >>> Version("1.2.3").is_devrelease
        False
        >>> Version("1.2.3.dev1").is_devrelease
        True
        N)rr*s r�
is_devreleasezVersion.is_devrelease�s���x�x�t�#�#rc�T�t|j�dk\r|jdSdS)zqThe first item of :attr:`release` or ``0`` if unavailable.

        >>> Version("1.2.3").major
        1
        r	r��lenrr*s r�majorz
Version.major�s'��#&�d�l�l�"3�q�"8�t�|�|�A��?�a�?rc�T�t|j�dk\r|jdSdS)z�The second item of :attr:`release` or ``0`` if unavailable.

        >>> Version("1.2.3").minor
        2
        >>> Version("1").minor
        0
        �r	rr�r*s r�minorz
Version.minor��'��#&�d�l�l�"3�q�"8�t�|�|�A��?�a�?rc�T�t|j�dk\r|jdSdS)z�The third item of :attr:`release` or ``0`` if unavailable.

        >>> Version("1.2.3").micro
        3
        >>> Version("1").micro
        0
        �r�rr�r*s r�microz
Version.micro�r�r)#rr r!r"�re�compiler�VERBOSE�
IGNORECASErU�CmpKeyr@rfr_rarq�propertyrArrrrrrrrr}r�rBr�r�r�r�r�r�r#rrrr�s���.�R�Z�Z��/�1�G�;�R�Z�Z�"�-�-�=W�
X�F�
�L�$
��$
��$
�L&�#�&����B�	�s�	��	����s�C�x����� �
�X�e�C��H�o�.�
��
��E�h�s�m�E��E��C�X�c�]�C��C���x��}�����
*��
*��
*���c����0�<�t�<��<� �%��%��%��$�t�$��$��@�s�@��@��@�s�@��@��@�s�@��@r�letter�numberc��|r>|�d}|j�}|dk(rd}n|dk(rd}n
|dvrd}n|dvrd	}|t|�fS|s|rd	}|t|�fSy)
Nr�alpha�a�beta�b)�cr�preview�rc)�rev�rr)�lowerrA)r�r�s  rrZrZ�s�����>��F������
�W���F�
�v�
��F�
�.�
.��F�
�|�
#��F��s�6�{�"�"��f����s�6�{�"�"�rz[\._-]rc�R�|�%td�tj|�D��Sy)zR
    Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve").
    Nc3�rK�|]/}|j�s|j�n
t|����1y�wr()�isdigitr�rA)rI�parts  rrKz'_parse_local_version.<locals>.<genexpr>�s/����
��!%����D�J�J�L�C��I�=�
�s�57)rX�_local_version_separatorsrY)rs rr[r[�s4��
���
�1�7�7��>�
�
�	
�rrrrrrc��ttttjd�t|�����}|�|�	|�t
}n|�t}n|}|�t
}n|}|�t}	n|}	|�t
}
ntd�|D��}
|||||	|
fS)Nc��|dk(S)Nrr#)rhs r�<lambda>z_cmpkey.<locals>.<lambda>s
��A��F�rc3�TK�|] }t|t�r|dfnt|f���"y�w)rjN)r0rArrHs  rrKz_cmpkey.<locals>.<genexpr>0s-����
�IJ�z�!�S�)�Q��G�0@�!�/D�D�
�s�&()rX�reversed�list�	itertools�	dropwhilerr
)rrrrrrrurw�_post�_dev�_locals           rr]r]�s������i�)�)�*:�H�W�<M�N�O�P��H��{�t�|���/��

�������|� 0�����{�'�����}�,���
�NS�
�
���(�D�%��v�5�5r))r"�collectionsr�r��typingrrrrrr�_structuresr
rrr
�__all__�
InfiniteTypesrfrA�PrePostDevType�SubLocalType�	LocalTyper�rB�VersionComparisonMethod�
namedtuplerr�
ValueErrorrr%�_VERSION_PATTERNrr�bytesrZr�r�r[r]r#rr�<module>r�s1�����	�E�E�W�W�
C���l�$8�8�9�
��}�e�C��H�o�5�6���]�C��,�-����	�
���,��#�$��&��4�5�
7�	
�
	�	
���

�	�
���s�C�x��.�.�.�)�S�
��#�F�F�#3�T�#9�:��!�;�!�!��C���
	�3�	�9�	��Z��+'�+'�`��>#��	�e@�l�e@�P	!��!��s�E�;�6�7�!�
�e�C��H�o��!�H'�B�J�J�y�1��	��	���(;�	�<6��<6�
�3��8�_�<6�
�%��S��/�	"�<6��5��c��?�
#�	<6�

�%��S��/�	"�<6��E�,�'�(�
<6��<6r

Zerion Mini Shell 1.0