B
    {[®  ã               @   s0   d dl Z d dlZddlmZ G dd„ deƒZdS )é    Né   )ÚDistributionc               @   s   e Zd Zddd„Zdd„ ZdS )ÚBDistNc             C   s   || _ || _|  ¡  d S )N)ÚfilenameÚmetadata_versionZextractMetadata)Úselfr   r   © r   ú,lib/python3.7/site-packages/pkginfo/bdist.pyÚ__init__   s    zBDist.__init__c       	         sÚ   t j t j | j¡¡}t j |¡s.td| ƒ‚| d¡rXt 	|¡‰ ˆ  
¡ }‡ fdd„}ntd| ƒ‚zZdd„ |D ƒ}tdd„ |D ƒƒ}x4d	d„ |D ƒD ]"}d
 |¡}||ƒ}d|kr–|S q–W W d ˆ  ¡  X td| ƒ‚d S )NzNo such file: %sz.eggc                s
   ˆ   | ¡S )N)Úread)Úname)Úarchiver   r	   Ú	read_file   s    zBDist.read.<locals>.read_filezNot a known archive format: %sc             S   s   g | ]}d |kr|  d¡‘qS )zPKG-INFOú/)Úsplit)Ú.0Úxr   r   r	   ú
<listcomp>   s    zBDist.read.<locals>.<listcomp>c             S   s   g | ]}t |ƒ|f‘qS r   )Úlen)r   r   r   r   r	   r      s    c             S   s   g | ]}|d  ‘qS )r   r   )r   r   r   r   r	   r      s    r   s   Metadata-VersionzNo PKG-INFO in archive: %s)ÚosÚpathÚabspathÚnormpathr   ÚexistsÚ
ValueErrorÚendswithÚzipfileZZipFileZnamelistÚsortedÚjoinÚclose)	r   ZfqnÚnamesr   ZtuplesZschwarzr   Ú	candidateÚdatar   )r   r	   r      s&    



z
BDist.read)N)Ú__name__Ú
__module__Ú__qualname__r
   r   r   r   r   r	   r      s   
r   )r   r   Zdistributionr   r   r   r   r   r	   Ú<module>   s   