§
    k•j  ã                  ó¤   — d dl mZ d dlmZ ddlmZ ddlmZ ddl	m
Z
mZ ddlmZ ddlmZ d	d
gZdd„Z G d„ d	e¦  «        Z G d„ d
¦  «        ZdS )é    )Úannotations)ÚIteratoré   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_nameÚInvalidRequirementÚRequirementÚreturnú	list[str]c                 ó   — t           S ©N)Ú__all__© ó    úe/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/packaging/requirements.pyÚ__dir__r      s   € Ý€Nr   c                  ó   — e Zd ZdZdS )r   zJ
    An invalid requirement was found, users should refer to PEP 508.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r      s   € € € € € ðð ð ð r   c                  óR   — e Zd ZdZdd„Zdd	„Zdd
„Zdd„Zdd„Zdd„Z	dd„Z
dd„ZdS )r   ao  Parse a requirement.

    Parse a given requirement string into its parts, such as name, specifier,
    URL, and extras. Raises InvalidRequirement on a badly-formed requirement
    string.

    Instances are safe to serialize with :mod:`pickle`. They use a stable
    format so the same pickle can be loaded in future packaging releases.

    .. versionchanged:: 26.2

        Added a stable pickle format. Pickles created with packaging 26.2+ can
        be unpickled with future releases.  Backward compatibility with pickles
        from packaging < 26.2 is supported but may be removed in a future
        release.
    Úrequirement_stringÚstrr   ÚNonec                óº  — 	 t          |¦  «        }n/# t          $ r"}t          t          |¦  «        ¦  «        |‚d }~ww xY w|j        | _        |j        pd | _        t          |j        pg ¦  «        | _        t          |j	        ¦  «        | _	        d | _
        |j
        �>t          j        t          ¦  «        | _
        t          |j
        ¦  «        | j
        _        d S d S r   )Ú_parse_requirementr   r   r   ÚnameÚurlÚsetÚextrasr
   Ú	specifierÚmarkerr   Ú__new__r	   Ú_markers)Úselfr   ÚparsedÚes       r   Ú__init__zRequirement.__init__5   sÏ   € ð	4Ý'Ð(:Ñ;Ô;ˆFˆFøÝ ð 	4ð 	4ð 	4Ý$¥S¨¡V¤VÑ,Ô,°!Ð3øøøøð	4øøøð  œˆŒ	Ø%œzÐ1¨TˆŒÝ # F¤MÐ$7°RÑ 8Ô 8ˆŒÝ'3°FÔ4DÑ'EÔ'EˆŒØ%)ˆŒØŒ=Ð$Ý œ.­Ñ0Ô0ˆDŒKÝ#:¸6¼=Ñ#IÔ#IˆDŒKÔ Ð Ð ð %Ð$s   ‚ ’
>œ9¹>r"   úIterator[str]c              #  ó  K  — |V — | j         r/d                     t          | j         ¦  «        ¦  «        }d|› d�V — | j        rt	          | j        ¦  «        V — | j        rd| j        › �V — | j        rdV — | j        rd| j        › �V — d S d S )Nú,ú[ú]z @ ú z; )r%   ÚjoinÚsortedr&   r   r#   r'   )r*   r"   Úformatted_extrass      r   Ú_iter_partszRequirement._iter_partsD   sÐ   è è € Øˆ
ˆ
ˆ
àŒ;ð 	*Ø"Ÿxšx­¨t¬{Ñ(;Ô(;Ñ<Ô<ÐØ)Ð&Ð)Ð)Ð)Ð)Ð)Ð)àŒ>ð 	&Ý�d”nÑ%Ô%Ð%Ð%Ð%àŒ8ð 	Ø"˜œÐ"Ð"Ð"Ð"Ð"ØŒ{ð Ø�	�	�	àŒ;ð 	%Ø$�t”{Ð$Ð$Ð$Ð$Ð$Ð$Ð$ð	%ð 	%r   c                ó    — t          | ¦  «        S r   )r   ©r*   s    r   Ú__getstate__zRequirement.__getstate__V   s   € õ �4‰yŒyÐr   ÚstateÚobjectc                óš  — t          |t          ¦  «        rt	 t          |¦  «        }n%# t          $ r}t	          d|›�¦  «        |‚d }~ww xY w|j        | _        |j        | _        |j        | _        |j        | _        |j	        | _	        d S t          |t          ¦  «        r| j                             |¦  «         d S t	          d|›�¦  «        ‚)Nz Cannot restore Requirement from )Ú
isinstancer   r   r   Ú	TypeErrorr"   r#   r%   r&   r'   ÚdictÚ__dict__Úupdate)r*   r;   ÚtmpÚexcs       r   Ú__setstate__zRequirement.__setstate__[   sÜ   € Ý�e�SÑ!Ô!ð 	ðWÝ! %Ñ(Ô(��øÝ%ð Wð Wð WÝÐ LÀ5Ð LÐ LÑMÔMÐSVÐVøøøøðWøøøàœˆDŒIØ”wˆDŒHØœ*ˆDŒKØ œ]ˆDŒNØœ*ˆDŒKØˆFÝ�e�TÑ"Ô"ð 	àŒM× Ò  Ñ'Ô'Ð'ØˆFÝÐD¸5ÐDÐDÑEÔEÐEs   —' §
A	±AÁA	c                ó\   — d                      |                      | j        ¦  «        ¦  «        S )NÚ )r4   r7   r"   r9   s    r   Ú__str__zRequirement.__str__n   s$   € Ø�wŠw�t×'Ò'¨¬	Ñ2Ô2Ñ3Ô3Ð3r   c                óB   — d| j         j        › dt          | ¦  «        ›d�S )Nú<ú(z)>)Ú	__class__r   r   r9   s    r   Ú__repr__zRequirement.__repr__q   s&   € Ø<�4”>Ô*Ð<Ð<­S°©Y¬YÐ<Ð<Ð<Ð<r   Úintc           	     ó„   — t          t          |                      t          | j        ¦  «        ¦  «        ¦  «        ¦  «        S r   )ÚhashÚtupler7   r   r"   r9   s    r   Ú__hash__zRequirement.__hash__t   s1   € Ý•E˜$×*Ò*Õ+<¸T¼YÑ+GÔ+GÑHÔHÑIÔIÑJÔJÐJr   ÚotherÚboolc                ó  — t          |t          ¦  «        st          S t          | j        ¦  «        t          |j        ¦  «        k    o?| j        |j        k    o/| j        |j        k    o| j        |j        k    o| j        |j        k    S r   )	r>   r   ÚNotImplementedr   r"   r%   r&   r#   r'   )r*   rS   s     r   Ú__eq__zRequirement.__eq__w   s†   € Ý˜%¥Ñ-Ô-ð 	"Ý!Ð!õ ˜dœiÑ(Ô(Õ,=¸e¼jÑ,IÔ,IÒIð ,Ø”˜uœ|Ò+ð,à” %¤/Ò1ð,ð ”˜EœIÒ%ð,ð ”˜uœ|Ò+ð	
r   N)r   r   r   r   )r"   r   r   r.   )r   r   )r;   r<   r   r   )r   rN   )rS   r<   r   rT   )r   r   r   r   r-   r7   r:   rE   rH   rM   rR   rW   r   r   r   r   r      sÊ   € € € € € ðð ð,Jð Jð Jð Jð%ð %ð %ð %ð$ð ð ð ð
Fð Fð Fð Fð&4ð 4ð 4ð 4ð=ð =ð =ð =ðKð Kð Kð Kð

ð 

ð 

ð 

ð 

ð 

r   N)r   r   )Ú
__future__r   Útypingr   Ú_parserr   r!   Ú
_tokenizerr   Úmarkersr   r	   Ú
specifiersr
   Úutilsr   r   r   Ú
ValueErrorr   r   r   r   r   ú<module>r`      s  ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð à <Ð <Ð <Ð <Ð <Ð <Ø )Ð )Ð )Ð )Ð )Ð )Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø $Ð $Ð $Ð $Ð $Ð $Ø $Ð $Ð $Ð $Ð $Ð $ð Øð€ðð ð ð ðð ð ð ð ˜ñ ô ð ðc
ð c
ð c
ð c
ð c
ñ c
ô c
ð c
ð c
ð c
r   