Ë
    ��h*  ã                   óx   — d dl Z d dlmZ d dlmZmZ d dlmZ d dlm	Z	  e j                  e«      Z G d„ d«      Zy)é    N)ÚOrderedDict)ÚDictÚList)Úcanonicalize_name)ÚInstallRequirementc                   ó®   — e Zd Zddeddfd„Zdefd„Zdefd„Zdeddfd„Z	deddfd	„Z
d
edefd„Zd
edefd„Zedee   fd„«       Zedee   fd„«       Zy)ÚRequirementSetÚcheck_supported_wheelsÚreturnNc                 ó>   — t        «       | _        || _        g | _        y)zCreate a RequirementSet.N)r   Úrequirementsr
   Úunnamed_requirements)Úselfr
   s     úW/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pip/_internal/req/req_set.pyÚ__init__zRequirementSet.__init__   s   € ô <G»=ˆÔØ&<ˆÔ#à>@ˆÕ!ó    c                 óŒ   — t        d„ | j                  j                  «       D «       d„ ¬«      }dj                  d„ |D «       «      S )Nc              3   ó:   K  — | ]  }|j                   rŒ|–— Œ y ­w©N)Ú
comes_from©Ú.0Úreqs     r   ú	<genexpr>z)RequirementSet.__str__.<locals>.<genexpr>   s   è ø€ ÒM�S¸c¿n»nŒSÑMùs   ‚”c                 ó4   — t        | j                  xs d«      S ©NÚ ©r   Úname©r   s    r   ú<lambda>z(RequirementSet.__str__.<locals>.<lambda>   ó   € Ô-¨c¯h©hªn¸"Ó=€ r   ©Úkeyú c              3   óF   K  — | ]  }t        |j                  «      –— Œ y ­wr   ©Ústrr   r   s     r   r   z)RequirementSet.__str__.<locals>.<genexpr>   s   è ø€ Ò=¨œ˜CŸG™GŸÑ=ùó   ‚!)Úsortedr   ÚvaluesÚjoin)r   r   s     r   Ú__str__zRequirementSet.__str__   s=   € ÜÙM˜D×-Ñ-×4Ñ4Ó6ÔMÙ=ô
ˆð �x‰xÑ=°Ô=Ó=Ð=r   c                 óà   — t        | j                  j                  «       d„ ¬«      }d}|j                  | j                  j
                  t        |«      dj                  d„ |D «       «      ¬«      S )Nc                 ó4   — t        | j                  xs d«      S r   r   r    s    r   r!   z)RequirementSet.__repr__.<locals>.<lambda>   r"   r   r#   z4<{classname} object; {count} requirement(s): {reqs}>z, c              3   óF   K  — | ]  }t        |j                  «      –— Œ y ­wr   r'   r   s     r   r   z*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__zRequirementSet.__repr__   sh   € ÜØ×Ñ×$Ñ$Ó&Ù=ô
ˆð
 OˆØ×#Ñ#Ø—n‘n×-Ñ-Ü�lÓ#Ø—‘Ñ@°<Ô@Ó@ð $ó 
ð 	
r   Úinstall_reqc                 óV   — |j                   rJ ‚| j                  j                  |«       y r   )r   r   Úappend©r   r:   s     r   Úadd_unnamed_requirementz&RequirementSet.add_unnamed_requirement)   s%   € Ø×#Ò#Ð#Ð#Ø×!Ñ!×(Ñ(¨Õ5r   c                 óh   — |j                   sJ ‚t        |j                   «      }|| j                  |<   y r   )r   r   r   )r   r:   Úproject_names      r   Úadd_named_requirementz$RequirementSet.add_named_requirement-   s1   € Ø×ÒÐÐä(¨×)9Ñ)9Ó:ˆØ*5ˆ×Ñ˜,Ò'r   r   c                 ól   — t        |«      }|| j                  v xr | j                  |   j                   S r   )r   r   Ú
constraint©r   r   r@   s      r   Úhas_requirementzRequirementSet.has_requirement3   s=   € Ü(¨Ó.ˆð ˜D×-Ñ-Ð-ò ?Ø×%Ñ% lÑ3×>Ñ>Ð>ð	
r   c                 ón   — t        |«      }|| j                  v r| j                  |   S t        d|›�«      ‚)NzNo project with the name )r   r   ÚKeyErrorrD   s      r   Úget_requirementzRequirementSet.get_requirement;   s>   € Ü(¨Ó.ˆà˜4×,Ñ,Ñ,Ø×$Ñ$ \Ñ2Ð2äÐ2°4°(Ð;Ó<Ð<r   c                 ób   — | j                   t        | j                  j                  «       «      z   S r   )r   Úlistr   r+   )r   s    r   Úall_requirementszRequirementSet.all_requirementsC   s'   € à×(Ñ(¬4°×0AÑ0A×0HÑ0HÓ0JÓ+KÑKÐKr   c                 óp   — | j                   D �cg c]  }|j                  s|j                  s|‘Œ c}S c c}w )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.
        )rK   rC   Úsatisfied_byr=   s     r   Úrequirements_to_installz&RequirementSet.requirements_to_installG   s;   € ð  $×4Ñ4ö
àØ×)Ò)°+×2JÒ2Jò ò
ð 	
ùò 
s   �!3)T)r6   Ú
__module__Ú__qualname__Úboolr   r(   r-   r9   r   r>   rA   rE   rH   Úpropertyr   rK   rN   © 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   Ú	getLoggerr6   Úloggerr	   rS   r   r   ú<module>r[      s2   ðÛ Ý #ß å 9å <à	ˆ×	Ñ	˜8Ó	$€÷F
ò F
r   