o
    ©„jÚ  ã                   @   sR   d dl Z d dlmZ d dlmZ dZG dd„ deƒZdede	eef f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deddfdd„ZdS )ÚPEP723ExceptionzHRaised to indicate a problem when parsing PEP 723 metadata from a scriptÚmsgÚreturnNc                 C   s
   || _ d S )N)r   )Úselfr   © r   úV/var/www/html/django_cbt/venv/lib/python3.10/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 | dd��}| ¡ }W d   ƒ n1 sw   Y  d‰ tt‡ fdd„t t|¡ƒƒ}t|ƒdkr;tdˆ ›d| ›�ƒ‚t|ƒdkrqd	 	d
d„ |d  
d¡jdd�D ƒ¡}zt |¡}W |S  typ } ztd| ›�ƒ|‚d }~ww tdˆ ›d| ›�ƒ‚)NÚutf8)ÚencodingÚscriptc                    s   |   d¡ˆ kS )NÚtype)Úgroup)Úm©Únamer   r	   Ú<lambda>   s    z!pep723_metadata.<locals>.<lambda>é   z	Multiple z blocks found in Ú c                 s   s2   � | ]}|  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.   
ÿÿ
þù€ÿÿr3   )r'   Útypingr   Úpip._internal.utils.compatr   r)   Ú
ValueErrorr   r   Údictr3   r   r   r   r	   Ú<module>   s    