+
     h|  c                   sv    ^ RI Ht ^ RIHtHtHtHt ^ RIHt ^ RI	H
t
 ^ RIHt R R ltR R	 ltRR R lltR
# )i    )Optional)ArchiveInfo	DirectUrlDirInfoVcsInfo)Link)path_to_url)vcsc                s<    V ^8  d   QhR\         R\        R\        /# )   
direct_urlnamereturn)r   strZformat   "K/usr/lib/python3.14/site-packages/pip/_internal/utils/direct_url_helpers.py__annotate__r   	   s!      i s s     c                s
   V P                  4        VR,           p. p\        V P                  \        4      '       dE   VV P                  P                   RV P
                   RV P                  P                   2,          pM\        V P                  \        4      '       dU   W P
                  ,          pV P                  P                  '       d&   VP                  V P                  P                  4       M4\        V P                  \        4      '       g   Q hW P
                  ,          pV P                  '       d#   VP                  RV P                  ,           4       V'       d    VRRP                  V4      ,           ,          pV# )z0Convert a DirectUrl to a pip requirement string.z @ Z+Z@zsubdirectory=Z#Z&)ZvalidateZ
isinstanceinfor   r   url	commit_idr   hashZappendr   subdirectoryZjoin)r	   r
   ZrequirementZ	fragmentss   &&  r   %direct_url_as_pep440_direct_referencer   	   s   ,KI*//7++""#1Z^^$4Ajoo6O6O5PQ	
 
JOO[	1	1~~%??Z__112*//73333~~%:+B+BBCsSXXi000r   c                s0    V ^8  d   QhR\         R\        /# )r   
source_dirr   )r   r   r   r   r   r   r       s       	 r   c                 sB    \        \        V 4      \        R R7      R7      # )T)Zeditable)r   r   )r   r   r   )r   s   &r   direct_url_for_editabler       s    
#d# r   Nc                s^    V ^8  d   QhR\         R\        \        ,          R\        R\        /# )r   linkr   link_is_in_wheel_cacher   )r   r    r   Zboolr   r   r   r   r   r   '   s0     0
 0

0
$SM0
JN0
0
r   c           	      s   V P                   '       d   \        P                  ! V P                  4      pV'       g   Q hVP	                  V P
                  4      w  rEpV'       d   V'       g   Q hTpMV'       g   Q hVP                  V4      p\        V\        VP                  VVR 7      V P                  R7      # V P                  4       '       d+   \        V P
                  \        4       V P                  R7      # RpV P                  p	V	'       d   V	 RV P                   2p\        V P
                  \        VR7      V P                  R7      # ))r   r   requested_revision)r   r   r   NZ=)r   )Zis_vcsr   Zget_backend_for_schemeZschemeZget_url_rev_and_authZurl_without_fragmentZget_revisionr   r   r
   Zsubdirectory_fragmentZis_existing_dirr   	hash_namer   r   )
r   r   r   Zvcs_backendr   r   Z_r   r   r   s
   &&&       r   direct_url_from_linkr   '   s+    {{{00={%0%E%E%%&
" " &%%*I
 :#00<I$$##5
 33
 	
 
				))33
 	
 NN	[$))-D))$'33
 	
r   )NF)Ztypingr    Zpip._internal.models.direct_urlr   r   r   r   Zpip._internal.models.linkr   Zpip._internal.utils.urlsr   Zpip._internal.vcsr   r   r   r   ) r   r   <module>r      s+     T T * 0 !.0
 0
r   