Ë
    ��hƒ  ã                  óŠ   — d dl mZ d dlmZ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  G d	„ d
e«      Z G d„ d«      Zy)é    )Úannotations)ÚAnyÚIteratoré   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_namec                  ó   — e Zd ZdZy)ÚInvalidRequirementzJ
    An invalid requirement was found, users should refer to PEP 508.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    ú`/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pip/_vendor/packaging/requirements.pyr   r      s   „ òr   r   c                  ó@   — e Zd ZdZd	d„Zd
d„Zdd„Zdd„Zdd„Zdd„Z	y)ÚRequirementzÁ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.
    c                óÐ  — 	 t        |«      }|j                  | _        |j
                  xs d | _        t        |j                  xs g «      | _        t        |j                  «      | _	        d | _
        |j                  �Ct        j                  t        «      | _
        t        |j                  «      | j                  _        y y # t        $ r}t        t        |«      «      |‚d }~ww xY w©N)Ú_parse_requirementr   r   ÚstrÚnameÚurlÚsetÚextrasr   Ú	specifierÚmarkerr	   Ú__new__r
   Ú_markers)ÚselfÚrequirement_stringÚparsedÚes       r   Ú__init__zRequirement.__init__"   s´   € ð	4Ü'Ð(:Ó;ˆFð  Ÿ™ˆŒ	Ø%Ÿz™zÒ1¨TˆŒÜ # F§M¡MÒ$7°RÓ 8ˆŒÜ'3°F×4DÑ4DÓ'EˆŒØ%)ˆŒØ�=‰=Ð$Ü Ÿ.™.¬Ó0ˆDŒKÜ#:¸6¿=¹=Ó#IˆD�K‰KÕ ð %øô !ò 	4Ü$¤S¨£VÓ,°!Ð3ûð	4ús   ‚C Ã	C%ÃC Ã C%c              #  ó`  K  — |–— | j                   r,dj                  t        | j                   «      «      }d|› d�–— | j                  rt	        | j                  «      –— | j
                  r!d| j
                  › �–— | j                  rd–— | j                  rd| j                  › �–— y y ­w)Nú,ú[ú]z@ ú z; )r   ÚjoinÚsortedr    r   r   r!   )r$   r   Úformatted_extrass      r   Ú_iter_partszRequirement._iter_parts1   s‘   è ø€ ØŠ
à�;Š;Ø"Ÿx™x¬¨t¯{©{Ó(;Ó<ÐØÐ&Ð' qÐ)Ò)à�>Š>Ü�d—n‘nÓ%Ò%à�8Š8Ø�t—x‘x�j�/Ò!Ø�{Š{Ø’	à�;Š;Ø�t—{‘{�mÐ$Ó$ð ùs   ‚B,B.c                óV   — dj                  | j                  | j                  «      «      S )NÚ )r.   r1   r   ©r$   s    r   Ú__str__zRequirement.__str__C   s    € Ø�w‰w�t×'Ñ'¨¯	©	Ó2Ó3Ð3r   c                ó   — d| › d�S )Nz<Requirement('z')>r   r4   s    r   Ú__repr__zRequirement.__repr__F   s   € Ø ˜v SÐ)Ð)r   c                óŒ   — t        | j                  j                  g| j                  t	        | j
                  «      «      ¢­«      S r   )ÚhashÚ	__class__r   r1   r   r   r4   s    r   Ú__hash__zRequirement.__hash__I   s>   € Üà—‘×'Ñ'ðà×!Ñ!Ô"3°D·I±IÓ">Ó?ñó
ð 	
r   c                ó\  — t        |t        «      st        S t        | j                  «      t        |j                  «      k(  xrj | j
                  |j
                  k(  xrO | j                  |j                  k(  xr4 | j                  |j                  k(  xr | j                  |j                  k(  S r   )	Ú
isinstancer   ÚNotImplementedr   r   r   r    r   r!   )r$   Úothers     r   Ú__eq__zRequirement.__eq__Q   sŒ   € Ü˜%¤Ô-Ü!Ð!ô ˜dŸi™iÓ(Ô,=¸e¿j¹jÓ,IÑIò ,Ø—‘˜uŸ|™|Ñ+ò,à—‘ %§/¡/Ñ1ò,ð —‘˜EŸI™IÑ%ò,ð —‘˜uŸ|™|Ñ+ð	
r   N)r%   r   ÚreturnÚNone)r   r   rA   zIterator[str])rA   r   )rA   Úint)r?   r   rA   Úbool)
r   r   r   r   r(   r1   r5   r7   r;   r@   r   r   r   r   r      s&   „ ñóJó%ó$4ó*ó
ô

r   r   N)Ú
__future__r   Útypingr   r   Ú_parserr   r   Ú
_tokenizerr   Úmarkersr	   r
   Ú
specifiersr   Úutilsr   Ú
ValueErrorr   r   r   r   r   ú<module>rM      s4   ðõ #ç  å <Ý )ß 4Ý $Ý $ô˜ô ÷F
ò F
r   