3
;p_                 @   s   d Z ddlmZ ye dZW n ek
r4   dZY nX es`ddlmZ dd Zdd	 Z	d
d Z
n$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  j| S )N)r   parsestr)bytestr r   0/tmp/pip-install-ofl94hr3/wheel/wheel/pkginfo.pyread_pkg_info_bytes   s    r   c          	   C   s&   t | d}t j|}W d Q R X |S )Nr)openr   parse)pathheadersmessager   r   r   read_pkg_info   s    r   c             C   s.   t | d}t|dddj| W d Q R X d S )NwFr   )mangle_from_maxheaderlen)r
   r   flatten)r   r   metadatar   r   r   write_pkg_info   s    r   )BytesGeneratorc             C   s   | j ddd}t j|}|S )Nasciisurrogateescape)encodingerrors)decoder   r   )r   r   r   r   r   r   r      s    c          	   C   s,   t | dddd}t j|}W d Q R X |S )Nr	   r   r   )r   r   )r
   r   r   )r   r   r   r   r   r   r   "   s
    
c             C   s.   t | d}t|dddj| W d Q R X d S )NwbFr   )r   r   )r
   r   r   )r   r   outr   r   r   r   )   s    N)__doc__email.parserr   unicodeZ_PY3	NameErroremail.generatorr   r   r   r   r   r   r   r   r   <module>   s   

