o
    Uh2                     @   sD   d dl Z d dlZd dlZddlmZ ddlmZ G dd deZdS )    N   )Distribution)parsec                   @   s   e Zd ZdddZdd ZdS )WheelNc                 C   s   || _ || _|   d S N)filenamemetadata_versionextractMetadata)selfr   r    r   a/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/pkginfo/wheel.py__init__   s   zWheel.__init__c           	         s  t jt j| jt jstd dr/t	  
 } fdd} j}n drIfddt D }dd }d	d
 }ntd z4dd |D }tdd |D }dd |D D ]}d|}||}d|v r~|  W |  S qgW |  n|  w td )NzNo such file: %sz.whlc                    s
     | S r   )read)name)archiver   r   	read_file   s   
zWheel.read.<locals>.read_filez
.dist-infoc                    s   g | ]	}t j |qS r   )ospathjoin).0p)fqnr   r   
<listcomp>    s    zWheel.read.<locals>.<listcomp>c                 S   s:   t j| dd}| W  d    S 1 sw   Y  d S )Nrb)mode)ioopenr   )r   infr   r   r   r   "   s   $c                   S   s   d S r   r   r   r   r   r   <lambda>&   s    zWheel.read.<locals>.<lambda>z<Not a known wheel archive format or installed .dist-info: %sc                 S   s   g | ]}d |v r| dqS )METADATA/)splitr   xr   r   r   r   -   s    c                 S   s   g | ]}t ||fqS r   )lenr"   r   r   r   r   .   s    c                 S   s   g | ]}|d  qS )r   r   r"   r   r   r   r   /   s    r    s   Metadata-VersionzNo METADATA in archive: %s)r   r   abspathnormpathr   exists
ValueErrorendswithzipfileZipFilenamelistcloselistdirsortedr   )	r
   namesr   r-   tuplesschwarzr   	candidatedatar   )r   r   r   r      s8   




z
Wheel.readr   )__name__
__module____qualname__r   r   r   r   r   r   r   
   s    
r   )r   r   r*   distributionr   r   r   r   r   r   r   <module>   s    