ó
    Þ j*  ã                   óx   • S SK r S SKJr  S SKJrJr  S SKJr  S SKJ	r	  \ R                  " \5      r " S S5      rg)é    N)ÚOrderedDict)ÚDictÚList)Ú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     ÚS/var/www/html/gaurav/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   óH   #   • 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   óJ   #   • 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   óJ   #   • 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__Úlenr0   )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   rB   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   rB   Ú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"   rI   s      r   Úhas_requirementÚRequirementSet.has_requirement3   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   ÚKeyErrorrN   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_requirementsC   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.
)rW   rM   Úsatisfied_byrE   s     r   Úrequirements_to_installÚ&RequirementSet.requirements_to_installG   sF   € ð  $×4Ò4ó
á4�Ø×)Õ)ó à2=×2JÕ2J÷ Ù4ñ
ð 	
ùò 
s   �A§AºA)r   r   r   )T)r=   Ú
__module__Ú__qualname__Ú__firstlineno__Úboolr   r,   r1   r@   r   rF   rJ   rO   rS   Úpropertyr   rW   r[   Ú__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   Útypingr   r   Úpip._vendor.packaging.utilsr   Úpip._internal.req.req_installr   Ú	getLoggerr=   Úloggerr	   rc   r   r   Ú<module>rk      s0   ðÛ Ý #ß å 9å <à	×	Ò	˜8Ó	$€÷F
ò F
r   