o
    Êä6_é  ã                   @   sˆ   d Z ddlmZ ze dZW n ey   dZY nw es0ddlmZ dd„ Zdd	„ Z	d
d„ Z
dS ddlmZ dd„ Zdd	„ Z	dd„ Z
dS )zTTools for reading and writing PKG-INFO / METADATA without caring
about the encoding.é    )ÚParserFT)Ú	Generatorc                 C   s   t ƒ  | ¡S )N)r   Úparsestr)Úbytestr© r   ú-lib/python3.10/site-packages/wheel/pkginfo.pyÚread_pkg_info_bytes   s   r   c                 C   s<   t | dƒ}tƒ  |¡}W d   ƒ |S 1 sw   Y  |S )NÚr©Úopenr   Úparse©ÚpathÚheadersÚmessager   r   r   Úread_pkg_info   s   
ÿþr   c                 C   óD   t | dƒ}t|ddd |¡ W d   ƒ d S 1 sw   Y  d S )NÚwFr   ©Zmangle_from_Zmaxheaderlen)r   r   Úflatten)r   r   Zmetadatar   r   r   Úwrite_pkg_info   ó   "ÿr   )ÚBytesGeneratorc                 C   s   | j ddd}tƒ  |¡}|S )NÚasciiÚsurrogateescape©ÚencodingÚerrors)Údecoder   r   )r   r   r   r   r   r   r      s   c                 C   sB   t | dddd}tƒ  |¡}W d   ƒ |S 1 sw   Y  |S )Nr	   r   r   r   r
   r   r   r   r   r   "   s   þ
ýüc                 C   r   )NÚwbFr   r   )r   r   r   )r   r   Úoutr   r   r   r   )   r   N)Ú__doc__Zemail.parserr   ZunicodeZ_PY3Ú	NameErrorZemail.generatorr   r   r   r   r   r   r   r   r   Ú<module>   s"    ÿ