o ai@sddlZddlZddlmZmZmZmZmZm Z ddl m Z ddl m Z ddlmZmZddlmZddlmZddlmZmZdd lmZd d lmZmZmZmZm Z e!e"Z#Gd d d eZ$GdddeZ%GdddeZ&dS)N) CollectionIterableIteratorList NamedTupleOptional) pkg_resources) Requirement)NormalizedNamecanonicalize_name)parse)misc) get_installer get_metadata)$pkg_resources_distribution_for_wheel)BaseDistributionBaseEntryPointBaseEnvironmentDistributionVersionWheelc@s&eZdZUeed<eed<eed<dS) EntryPointnamevaluegroupN)__name__ __module__ __qualname__str__annotations__r r /builddir/build/BUILDROOT/alt-python310-pip-21.3.1-5.el8.x86_64/opt/alt/python310/lib/python3.10/site-packages/pip/_internal/metadata/pkg_resources.pyrs  rc@s:eZdZdejddfddZedededdfdd Z e de efd d Z e de efd d Z e defddZe defddZe defddZe defddZe defddZe defddZdedefddZdeefddZe dejjfddZd&d!eedee fd"d#Z!deefd$d%Z"dS)' DistributiondistreturnNcC ||_dSN)_distselfr#r r r!__init__  zDistribution.__init__wheelrcCsD|}t|||j}Wd||S1swY||Sr&) as_zipfilerlocation)clsr,rzfr#r r r! from_wheel#s  zDistribution.from_wheelcC|jjSr&)r'r.r)r r r!r.)zDistribution.locationcCr2r&)r'egg_infor3r r r!info_directory-r4zDistribution.info_directorycC t|jjSr&)r r' project_namer3r r r!canonical_name1 zDistribution.canonical_namecCr7r&) parse_versionr'versionr3r r r!r<5r:zDistribution.versioncC t|jSr&)rr'r3r r r! installer9 zDistribution.installercC t|jSr&)r dist_is_localr'r3r r r!local=r:zDistribution.localcCr@r&)r dist_in_usersiter'r3r r r! in_usersiteAr:zDistribution.in_usersitecCr@r&)r dist_in_site_packagesr'r3r r r!in_site_packagesEr:zDistribution.in_site_packagescCs |j|s t||j|Sr&)r' has_metadataFileNotFoundErrorr)r)rr r r! read_textIs  zDistribution.read_textccs\|jD]#\}}|D]\}}t|d\}}}t|||dVqqdS)N=)rrr)r' get_entry_mapitemsr partitionrstrip)r)rentriesr entry_point_rr r r!iter_entry_pointsNszDistribution.iter_entry_pointscCr=r&)rr'r3r r r!metadataTr?zDistribution.metadatar extrascCs"|r t||jj}|j|Sr&) frozenset intersectionr'rTrequires)r)rTr r r!iter_dependenciesXs zDistribution.iter_dependenciescCr2r&)r'rTr3r r r!iter_provided_extras]sz!Distribution.iter_provided_extras)r )#rrrrr"r* classmethodrrr1propertyrr.r6r r9rr<r>boolrBrDrFrIrrrRemailmessageMessagerSrr rXrYr r r r!r"s4r"c@seZdZdejddfddZedefddZede e e defd d Z d e de e fd d Zd e de e fddZdee fddZdS) Environmentwsr$NcCr%r&)_ws)r)rar r r!r*br+zEnvironment.__init__cCs |tjSr&)r working_set)r/r r r!defaulter?zEnvironment.defaultpathscCs|t|Sr&)r WorkingSet)r/rer r r! from_pathsiszEnvironment.from_pathsrcCs,t|}|D] }|j|kr|SqdS)zFind a distribution matching the ``name`` in the environment. This searches from *all* distributions available in the environment, to match the behavior of ``pkg_resources.get_distribution()``. N)r iter_distributionsr9)r)rr9r#r r r!_search_distributionms   z Environment._search_distributioncCsD||}|r |Sz|j|Wn tjyYdSw||Sr&)rirbrequirerDistributionNotFound)r)rr#r r r!get_distributionys   zEnvironment.get_distributionccs|jD]}t|VqdSr&)rbr"r(r r r!_iter_distributionss  zEnvironment._iter_distributions)rrrrrfr*rZrrdrrrrgrrirlrrmr r r r!r`as r`)' email.messager]loggingtypingrrrrrr pip._vendorrZ"pip._vendor.packaging.requirementsr pip._vendor.packaging.utilsr r Zpip._vendor.packaging.versionr r;pip._internal.utilsr pip._internal.utils.packagingrrpip._internal.utils.wheelrbaserrrrr getLoggerrloggerrr"r`r r r r!s       B