+
     h  c                  s    ^ RI Ht ^ RIHtHt ^RIHt ^RIH	t	 ^RI
HtHt ^RIHt ^RIHt  ! R R	]4      t ! R
 R4      tR# )i    )annotations)AnyIterator)parse_requirement)ParserSyntaxError)Marker_normalize_extra_values)SpecifierSet)canonicalize_namec                  s    ] tR t^tRtRtR# )InvalidRequirementzB
An invalid requirement was found, users should refer to PEP 508.
 N)__name__
__module____qualname____firstlineno____doc____static_attributes__r
       G/usr/lib/python3.14/site-packages/pip/_vendor/packaging/requirements.pyr	   r	      s    r   r	   c                  sb    ] tR t^tRtR R ltR R ltR R ltR R	 ltR
 R lt	R R lt
RtR# )RequirementzParse 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                    V ^8  d   QhRRRR/# )   requirement_stringstrreturnZNoner
   Zformat   "r   __annotate__Requirement.__annotate__"   s     J J3 J4 Jr   c                	s    \        V4      pTP                  T n        TP
                  ;'       g    R T n        \        TP                  ;'       g    . 4      T n        \        TP                  4      T n	        R T n
        TP                  eF   \        P                  ! \        4      T n
        \        TP                  4      T P                  n        R # R #   \         d   p\        \        T4      4      ThR p?ii ; iN)_parse_requirementr   r	   r   nameurlZsetextrasr   	specifiermarkerr   Z__new__r   Z_markers)selfr   ZparsedZes   &&  r   __init__ZRequirement.__init__"   s    	4'(:;F  	%zz11T #FMM$7$7R 8'3F4D4D'E%)==$ ..0DK#:6==#IDKK  % ! 	4$SV,!3	4s   C C8C33C8c               r   )r   r   r   r   zIterator[str]r
   r   r   r   r   r   1   s     % % % %r   c              #  	s  "   Vx  V P                   '       d-   R P                  \        V P                   4      4      pRV R2x  V P                  '       d   \	        V P                  4      x  V P
                  '       d(   RV P
                   2x  V P                  '       d   Rx  V P                  '       d   RV P                   2x  R# R# 5i)Z,Z[Z]z@ Z z; N)r!   joinZsortedr"   r   r    r#   )r$   r   Zformatted_extrass   && r   _iter_partsZRequirement._iter_parts1   s     
;;;"xxt{{(;<&'q))>>>dnn%%888txxj/!{{{	;;;t{{m$$ s   AC(C "C#C9Cc                   V ^8  d   QhRR/# r   r   r   r
   r   r   r   r   r   C   s     4 4 4r   c                	sV    R P                  V P                  V P                  4      4      # )Z )r&   r'   r   r$      &r   __str__ZRequirement.__str__C   s     wwt''		233r   c               r(   r)   r
   r   r   r   r   r   F   s     * *# *r   c                	s    R V  R2# )z<Requirement('z')>r
   r*   r+   r   __repr__ZRequirement.__repr__F   s    vS))r   c               r(   )r   r   Zintr
   r   r   r   r   r   I   s     
 
# 
r   c                	s    \        V P                  P                  .V P                  \	        V P
                  4      4      O54      # r   )ZhashZ	__class__r   r'   r   r   r*   r+   r   __hash__ZRequirement.__hash__I   s>    ''!!"3DII">?
 	
r   c               r   )r   otherr   r   Zboolr
   r   r   r   r   r   Q   s     

 

C 

D 

r   c                	s   \        V\        4      '       g   \        # \        V P                  4      \        VP                  4      8H  ;'       d}    V P
                  VP
                  8H  ;'       d\    V P                  VP                  8H  ;'       d;    V P                  VP                  8H  ;'       d    V P                  VP                  8H  # r   )	Z
isinstancer   ZNotImplementedr   r   r!   r"   r    r#   )r$   r/   s   &&r   __eq__ZRequirement.__eq__Q   s    %--!! dii(,=ejj,II , ,u||+, ,%//1, , EII%, , u||+	
r   )r!   r#   r   r"   r    N)r   r   r   r   r   r%   r'   r,   r-   r.   r0   r   r
   r   r   r   r      s+    J%$4*


 

r   r   N)Z
__future__r    Ztypingr   r   Z_parserr   r   Z
_tokenizerr   Zmarkersr   r   Z
specifiersr   Zutilsr   Z
ValueErrorr	   r   r
   r   r   <module>r1      s4    #   < ) 4 $ $ F
 F
r   