=mZddlZddlmZddlmZddlmZGddejZdS)N) PackageFinder)BaseDistribution)InstallRequirementceZdZdZdeddffd ZejdefdZ ejde de ddfd Z xZ 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. reqreturnNcVt||_dSN)super__init__r)selfr __class__s /builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el9.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_internal/distributions/base.pyr zAbstractDistribution.__init__s$ ctr NotImplementedError)rs rget_metadata_distributionz.AbstractDistribution.get_metadata_distributions!###rfinderbuild_isolationctr r)rrrs rprepare_distribution_metadataz2AbstractDistribution.prepare_distribution_metadata s"###r)__name__ __module__ __qualname____doc__rr abcabstractmethodrrrboolr __classcell__)rs@rrrs  .4 $+;$$$$ $#$6:$ $$$$$$$$rr) metaclass) r"pip._internal.index.package_finderrpip._internal.metadata.baserpip._internal.reqrABCMetarrrr(s <<<<<<888888000000$$$$$S[$$$$$$r