a
    ñ»jÉ  ã                   @   sP   d dl Z d dlmZ d dlmZ dZG dd„ deƒZee	eef dœdd	„Z
dS )
é    N)ÚAny)ÚtomllibzG(?m)^# /// (?P<type>[a-zA-Z0-9-]+)$\s(?P<content>(^#(| .*)$\s)+)^# ///$c                   @   s    e Zd ZdZeddœdd„ZdS )ÚPEP723ExceptionzHRaised to indicate a problem when parsing PEP 723 metadata from a scriptN)ÚmsgÚreturnc                 C   s
   || _ d S )N)r   )Úselfr   © r   ú>E:\soccer\ml_env\Lib\site-packages\pip/_internal/req/pep723.pyÚ__init__   s    zPEP723Exception.__init__)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr
   r   r   r   r	   r   	   s   r   )Ú
scriptfiler   c              
      s  t | ƒ�}| ¡ }W d   ƒ n1 s&0    Y  d‰ tt‡ fdd„t t|¡ƒƒ}t|ƒdkrttdˆ ›d| ›�ƒ‚nŒt|ƒdkrìd 	dd	„ |d
  
d¡jdd�D ƒ¡}zt |¡}W n4 tyè } ztd| ›�ƒ|‚W Y d }~n
d }~0 0 ntdˆ ›d| ›�ƒ‚|S )NÚscriptc                    s   |   d¡ˆ kS )NÚtype)Úgroup)Úm©Únamer   r	   Ú<lambda>   ó    z!pep723_metadata.<locals>.<lambda>é   z	Multiple z blocks found in Ú c                 s   s0   | ](}|  d ¡r|dd… n
|dd… V  qdS )z# é   Nr   )Ú
startswith)Ú.0Úliner   r   r	   Ú	<genexpr>   s   ÿz"pep723_metadata.<locals>.<genexpr>r   ÚcontentT)ÚkeependszFailed to parse TOML in zFile does not contain z metadata: )ÚopenÚreadÚlistÚfilterÚreÚfinditerÚREGEXÚlenr   Újoinr   Ú
splitlinesr   ÚloadsÚ	Exception)r   Úfr   Úmatchesr    ÚmetadataÚexcr   r   r	   Úpep723_metadata   s(    
&ÿ
þ(ÿr2   )r&   Útypingr   Úpip._internal.utils.compatr   r(   Ú
ValueErrorr   r   Údictr2   r   r   r   r	   Ú<module>   s
   