Ë
    �ëi¨  ã                  ó–   — 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y)é    )Úannotations)ÚIteratoré   )Úparse_requirement)ÚParserSyntaxError)ÚMarkerÚ_normalize_extra_values)ÚSpecifierSet)Úcanonicalize_nameÚInvalidRequirementÚRequirementc                 ó   — t         S ©N)Ú__all__© ó    úV/var/www/html/chat/reports/venv/lib/python3.12/site-packages/packaging/requirements.pyÚ__dir__r      s   € Ü€Nr   c                  ó   — e Zd ZdZy)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                  ó@   — 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)r   zÁ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r   )Ú_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_parts:   s’   è ø€ ØŠ
à�;Š;Ø"Ÿx™x¬¨t¯{©{Ó(;Ó<ÐØÐ&Ð' qÐ)Ò)à�>Š>Ü�d—n‘nÓ%Ò%à�8Š8Ø˜Ÿ™�zÐ"Ò"Ø�{Š{Ø’	à�;Š;Ø�t—{‘{�mÐ$Ó$ð ùs   ‚B,B.c                óV   — dj                  | j                  | j                  «      «      S )NÚ )r0   r3   r   ©r&   s    r   Ú__str__zRequirement.__str__L   s    € Ø�w‰w�t×'Ñ'¨¯	©	Ó2Ó3Ð3r   c                óN   — d| j                   j                  › dt        | «      ›d�S )Nú<ú(z)>)Ú	__class__r   r   r6   s    r   Ú__repr__zRequirement.__repr__O   s&   € Ø�4—>‘>×*Ñ*Ð+¨1¬S°«Y¨M¸Ð<Ð<r   c           	     ón   — t        t        | j                  t        | j                  «      «      «      «      S r   )ÚhashÚtupler3   r   r   r6   s    r   Ú__hash__zRequirement.__hash__R   s'   € Ü”E˜$×*Ñ*Ô+<¸T¿Y¹YÓ+GÓHÓIÓJÐJr   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__U   sŒ   € Ü˜%¤Ô-Ü!Ð!ô ˜dŸi™iÓ(Ô,=¸e¿j¹jÓ,IÑIò ,Ø—‘˜uŸ|™|Ñ+ò,à—‘ %§/¡/Ñ1ò,ð —‘˜EŸI™IÑ%ò,ð —‘˜uŸ|™|Ñ+ð	
r   N)r'   r   ÚreturnÚNone)r   r   rF   zIterator[str])rF   r   )rF   Úint)rD   ÚobjectrF   Úbool)
r   r   r   r   r*   r3   r7   r<   r@   rE   r   r   r   r   r      s'   „ ñóJó%ó$4ó=óKô

r   N)rF   z	list[str])Ú
__future__r   Útypingr   Ú_parserr   r   Ú
_tokenizerr   Úmarkersr   r	   Ú
specifiersr
   Úutilsr   r   r   Ú
ValueErrorr   r   r   r   r   ú<module>rS      sH   ðõ #å å <Ý )ß 4Ý $Ý $ð Øð€óô˜ô ÷A
ò A
r   