/usr/local/lib/python3.9/site-packages/pip/_internal/models/__pycache__
a ���h� � @ sv d Z ddlmZ ddlZddlmZ ddlmZ ddlm Z m Z ddlmZ ddl mZ ddlmZ G d d � d �ZdS )z`Represents a wheel file and provides access to the various parts of the name that have meaning. � )�annotationsN)�Iterable��Tag)�BuildTag�parse_wheel_filename)�InvalidWheelFilename)� deprecatedc @ s� e Zd ZdZe�dej�Zddd�dd�Ze dd �d d��Z dd �d d�Zddd�dd�Zdddd�dd�Z ddd�dd�ZdS )�WheelzA wheel filez�^(?P<namever>(?P<name>[^\s-]+?)-(?P<ver>[^\s-]*?)) ((-(?P<build>\d[^-]*?))?-(?P<pyver>[^\s-]+?)-(?P<abi>[^\s-]+?)-(?P<plat>[^\s-]+?) \.whl|\.dist-info)$�str�None)�filename�returnc s || _ | d | _z(t|�}|\| _}| _| _t|�| _W n� t�y } z�| j� |�}|sjt |jd �d �td|�d|jd � d�dddd� |� d ��d d�| _|� d��d d�| _|� d ��d�}|� d��d�� |� d��d��t� �fdd�|D ��| _W Y d }~n d }~0 0 d S )Nr zWheel filename zU is not correctly normalised. Future versions of pip will raise the following error: z zvto rename the wheel to use a correctly normalised name (this may require updating the version in the project metadata)z25.3i�2 )�reason�replacement�gone_in�issue�name�_�-�ver�pyver�.�abi�platc 3 s0 | ](}� D ]}�D ]}t |||d �V qq qdS ))�interpreterr �platformNr )�.0�pyr r ��abis�plats� �D/usr/local/lib/python3.9/site-packages/pip/_internal/models/wheel.py� <genexpr>F s �z!Wheel.__init__.<locals>.<genexpr>)r � _build_tagr r � file_tagsr �version�_PackagingInvalidWheelFilename�legacy_wheel_file_re�matchr �argsr �group�replace�split� frozenset)�selfr � wheel_info�_version�e�legacy_wheel_info� pyversionsr"