a lj @ s0 d Z ddlZddlmZ ddlmZ ddlmZmZ ddl m Z mZ ddlm Z ddlmZmZ dd lmZ dd lmZ dZeeZG dd d eZeeeedddZeeeeef dddZeeedddZeeedddZeeedddZ eee!df ddd Z"ee!df edd!d"d#Z#dS )$z0Support functions for working with wheel files. N)Message)Parser)DictTuple) BadZipFileZipFile)canonicalize_name)DistInfoDistributionDistribution)UnsupportedWheel)DictMetadata) r c sF e Zd ZdZeeef edd fddZeed fddZ Z S ) WheelMetadatazaMetadata provider that maps metadata decoding exceptions to our internal exception type. N)metadata wheel_namereturnc s t | || _d S )N)super__init___wheel_name)selfr r __class__ =/usr/lib/python3.9/site-packages/pip/_internal/utils/wheel.pyr s zWheelMetadata.__init__)namer c sN zt |W S tyH } z"td| j d| W Y d }~n d }~0 0 d S )NzError decoding metadata for : )r get_metadataUnicodeDecodeErrorr r )r r er r r r s zWheelMetadata.get_metadata) __name__ __module____qualname____doc__r strbytesr r __classcell__r r r r r s r ) wheel_zipr locationr c s t | |\ } fdd| D }i }|D ]`}|dd\}}zt| |||<