Current File : //lib/python3.9/site-packages/pip/_internal/distributions/__pycache__/base.cpython-39.pyc |
a
[��f� � @ sD d dl Z d dlmZ d dlmZ d dlmZ G dd� de jd�ZdS )� N)�
PackageFinder)�BaseDistribution)�InstallRequirementc sT e Zd ZdZedd�� fdd�Zejed�dd��Z eje
edd �d
d��Z� Z
S )�AbstractDistributiona
A base class for handling installable artifacts.
The requirements for anything installable are as follows:
- we must be able to determine the requirement name
(or we can't correctly handle the non-upgrade case).
- for packages with setup requirements, we must also be able
to determine their requirements without installing additional
packages (for the same reason as run-time dependencies)
- we must be able to create a Distribution object exposing the
above metadata.
N)�req�returnc s t � �� || _d S �N)�super�__init__r )�selfr �� __class__� �D/usr/lib/python3.9/site-packages/pip/_internal/distributions/base.pyr
s
zAbstractDistribution.__init__)r c C s
t � �d S r ��NotImplementedError)r r r r �get_metadata_distribution s z.AbstractDistribution.get_metadata_distribution)�finder�build_isolationr c C s
t � �d S r r )r r r r r r �prepare_distribution_metadata s z2AbstractDistribution.prepare_distribution_metadata)�__name__�
__module__�__qualname__�__doc__r r
�abc�abstractmethodr r r �boolr �
__classcell__r r r r r s �r )� metaclass) r Z"pip._internal.index.package_finderr Zpip._internal.metadata.baser Zpip._internal.reqr �ABCMetar r r r r �<module> s