
    \jL                        U d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	m
Z
mZ d dlmZ d dlmZ e	rd dlmZ  e
d      Zeee   z  Zd	ed
<     e       e      Zded<   ddZedd       Zedd       ZefddZy)    )annotations)CallableIterableIterator)	lru_cache)TYPE_CHECKINGTypeVaroverloadN)Requirement)	TypeAlias_Tr   
_StrOrIterzCallable[[str], Requirement]	parse_reqc                    t        j                  t        t         j                  t        j                  |                   S )z
    Yield requirement strings for each specification in `strs`.

    `strs` must be a string, or a (possibly-nested) iterable thereof.
    )textjoin_continuationmapdrop_commentyield_linesstrss    C/root/.hermes/venv/lib/python3.12/site-packages/setuptools/_reqs.pyparse_stringsr      s-     !!#d&7&79I9I$9O"PQQ    c                     y N r   s    r   parser   "   s    69r   c                     y r   r   r   parsers     r   r   r   $   s    JMr   c                ,    t        |t        |             S )z
    Parse requirements.
    )r   r   r    s     r   r   r   &   s     v}T*++r   )r   r   returnzIterator[str])r   r   r#   zIterator[Requirement])r   r   r!   zCallable[[str], _T]r#   zIterator[_T])
__future__r   collections.abcr   r   r   	functoolsr   typingr   r	   r
   jaraco.textr   packaging.requirementsr   r   r   strr   __annotations__r   r   r   r   r   r   <module>r,      s    " 8 8  3 3  . T]hsm+
I + +6)+k*B	' BR 
 9 
 9	 M 
 M:C ,r   