ó
    T=Œj  ã                   óh   • S SK r S SKJr  S SKJr  S SKJr  \ R                  " \5      r	 " S S5      r
g)é    N)ÚOrderedDict)Úcanonicalize_name)ÚInstallRequirementc                   óÊ   • \ rS rSrSS\SS4S jjrS\4S jrS\4S jrS\	SS4S	 jr
S\	SS4S
 jrS\S\4S jrS\S\	4S jr\S\\	   4S j5       r\S\\	   4S j5       rSrg)ÚRequirementSeté   Úcheck_supported_wheelsÚreturnNc                 ó<   • [        5       U l        Xl        / U l        g)zCreate a RequirementSet.N)r   Úrequirementsr	   Úunnamed_requirements)Úselfr	   s     Ú]/Users/stevendouglas/BidBrain/.venv/lib/python3.13/site-packages/pip/_internal/req/req_set.pyÚ__init__ÚRequirementSet.__init__   s   € ô <G»=ˆÔØ&<Ô#à>@ˆÕ!ó    c                 ó†   • [        S U R                  R                  5        5       S S9nSR                  S U 5       5      $ )Nc              3   óJ   #   • U  H  oR                   (       a  M  Uv •  M     g 7f©N)Ú
comes_from©Ú.0Úreqs     r   Ú	<genexpr>Ú)RequirementSet.__str__.<locals>.<genexpr>   s   é € ÐMÒ6�S¿n½n�S‰SÒ6ùs   ‚#š	#c                 ó>   • [        U R                  =(       d    S5      $ ©NÚ ©r   Úname©r   s    r   Ú<lambda>Ú(RequirementSet.__str__.<locals>.<lambda>   ó   € Ô-¨c¯h©h¯n¸"Ô=r   ©ÚkeyÚ c              3   óL   #   • U  H  n[        UR                  5      v •  M     g 7fr   ©Ústrr   r   s     r   r   r      s   é € Ð=²¨œ˜CŸG™GŸ˜²ùó   ‚"$)Úsortedr   ÚvaluesÚjoin)r   r   s     r   Ú__str__ÚRequirementSet.__str__   s=   € ÜÙM˜D×-Ñ-×4Ñ4Ô6ÓMÙ=ñ
ˆð �x‰xÑ=±Ó=Ó=Ð=r   c                 óÔ   • [        U R                  R                  5       S S9nSnUR                  U R                  R
                  [        U5      SR                  S U 5       5      S9$ )Nc                 ó>   • [        U R                  =(       d    S5      $ r   r   r!   s    r   r"   Ú)RequirementSet.__repr__.<locals>.<lambda>   r$   r   r%   z4<{classname} object; {count} requirement(s): {reqs}>z, c              3   óL   #   • U  H  n[        UR                  5      v •  M     g 7fr   r)   r   s     r   r   Ú*RequirementSet.__repr__.<locals>.<genexpr>%   s   é € Ð@²<¨Cœ3˜sŸw™wŸ<˜<²<ùr+   )Ú	classnameÚcountÚreqs)r,   r   r-   ÚformatÚ	__class__Ú__name__Úlenr.   )r   r   Úformat_strings      r   Ú__repr__ÚRequirementSet.__repr__   sh   € ÜØ×Ñ×$Ñ$Ó&Ù=ñ
ˆð
 OˆØ×#Ñ#Ø—n‘n×-Ñ-Ü�lÓ#Ø—‘Ñ@±<Ó@Ó@ð $ð 
ð 	
r   Úinstall_reqc                 ó`   • UR                   (       a   eU R                  R                  U5        g r   )r    r   Úappend©r   r@   s     r   Úadd_unnamed_requirementÚ&RequirementSet.add_unnamed_requirement(   s%   € Ø×#×#Ð#Ð#Ø×!Ñ!×(Ñ(¨Õ5r   c                 óp   • UR                   (       d   e[        UR                   5      nXR                  U'   g r   )r    r   r   )r   r@   Úproject_names      r   Úadd_named_requirementÚ$RequirementSet.add_named_requirement,   s/   € Ø××ÐÐä(¨×)9Ñ)9Ó:ˆØ*5×Ñ˜,Ò'r   r    c                 ó~   • [        U5      nX R                  ;   =(       a    U R                  U   R                  (       + $ r   )r   r   Ú
constraint©r   r    rG   s      r   Úhas_requirementÚRequirementSet.has_requirement2   s;   € Ü(¨Ó.ˆð ×-Ñ-Ñ-÷ ?Ø×%Ñ% lÑ3×>Ñ>Ô>ð	
r   c                 ór   • [        U5      nX R                  ;   a  U R                  U   $ [        SU< 35      e)NzNo project with the name )r   r   ÚKeyErrorrL   s      r   Úget_requirementÚRequirementSet.get_requirement:   s<   € Ü(¨Ó.ˆà×,Ñ,Ó,Ø×$Ñ$ \Ñ2Ð2äÐ2°4±(Ð;Ó<Ð<r   c                 ób   • U R                   [        U R                  R                  5       5      -   $ r   )r   Úlistr   r-   )r   s    r   Úall_requirementsÚRequirementSet.all_requirementsB   s'   € à×(Ñ(¬4°×0AÑ0A×0HÑ0HÓ0JÓ+KÑKÐKr   c                 ó’   • U R                    Vs/ s H+  nUR                  (       a  M  UR                  (       a  M)  UPM-     sn$ s  snf )zÊReturn the list of requirements that need to be installed.

TODO remove this property together with the legacy resolver, since the new
     resolver only returns requirements that need to be installed.
)rU   rK   Úsatisfied_byrC   s     r   Úrequirements_to_installÚ&RequirementSet.requirements_to_installF   sF   € ð  $×4Ò4ó
â4�Ø×)Õ)ó à2=×2JÕ2J÷ Ù4ñ
ð 	
ùò 
s   �A¨A»A)r	   r   r   )T)r;   Ú
__module__Ú__qualname__Ú__firstlineno__Úboolr   r*   r/   r>   r   rD   rH   rM   rQ   ÚpropertyrT   rU   rY   Ú__static_attributes__© r   r   r   r      sÄ   † ñA¨tð A¸tõ Að>˜ô >ð
˜#ô 
ð6Ð3Eð 6È$ô 6ð6Ð1Cð 6Èô 6ð
 Cð 
¨Dô 
ð= Cð =Ð,>ô =ð ðL $Ð'9Ñ":ó Ló ðLð ð

¨Ð.@Ñ)Aó 

ó ó

r   r   )ÚloggingÚcollectionsr   Úpip._vendor.packaging.utilsr   Úpip._internal.req.req_installr   Ú	getLoggerr;   Úloggerr   ra   r   r   Ú<module>rh      s-   ðÛ Ý #å 9å <à	×	Ò	˜8Ó	$€÷F
ò F
r   