U n a @sddlmZddlmZddlmZmZerhddlmZddl m Z ddl m Z ddlm Z dd lmZGd d d eZGd d d eZGdddeZdS))canonicalize_name)MYPY_CHECK_RUNNING) Requirement format_name)Sequence) SpecifierSet)InstallRequirement) Candidate)Factoryc@s8eZdZddZddZeddZddZd d Zd S) ExplicitRequirementcCs ||_dSN candidateselfrrqC:\Users\vtejo\AppData\Local\Temp\pip-unpacked-wheel-6mt8ur68\pip\_internal\resolution\resolvelib\requirements.py__init__szExplicitRequirement.__init__cCsdj|jj|jdS)Nz{class_name}({candidate!r})) class_namer)format __class____name__rrrrr__repr__szExplicitRequirement.__repr__cCs|jjSr )rnamerrrrrszExplicitRequirement.namecCs|jgSr rrrrr find_matches$sz ExplicitRequirement.find_matchescCs ||jkSr rrrrris_satisfied_by(sz#ExplicitRequirement.is_satisfied_byN) r __module__ __qualname__rrpropertyrrrrrrrr s  r c@s@eZdZddZddZddZeddZd d Zd d Z d S)SpecifierRequirementcCs,|jdkstd||_||_|jj|_dS)NzThis is a link, not a specifier)linkAssertionError_ireq_factoryreqextras)rZireqfactoryrrrr.szSpecifierRequirement.__init__cCs t|jjSr )strr$r&rrrr__str__5szSpecifierRequirement.__str__cCsdj|jjt|jjdS)Nz{class_name}({requirement!r}))r requirement)rrrr)r$r&rrrrr9s zSpecifierRequirement.__repr__cCst|jjj}t||jSr )rr$r&rrr')rcanonical_namerrrr@szSpecifierRequirement.namecCs|j|j|j}t|Sr )r%Ziter_found_candidatesr$r'list)ritrrrrFsz!SpecifierRequirement.find_matchescCs:|j|jks td|j|j|jjj}|j|jddS)Nz?Internal issue: Candidate is not for this requirement {} vs {}T prereleases)rr#rr$r& specifiercontainsversion)rrspecrrrrKs z$SpecifierRequirement.is_satisfied_byN) rrrrr*rr rrrrrrrr!-s r!c@s<eZdZdZddZddZeddZdd Zd d Z d S) RequiresPythonRequirementz9A requirement representing Requires-Python metadata. cCs||_||_dSr )r1 _candidate)rr1matchrrrrZsz"RequiresPythonRequirement.__init__cCsdj|jjt|jdS)Nz{class_name}({specifier!r}))rr1)rrrr)r1rrrrr_sz"RequiresPythonRequirement.__repr__cCs|jjSr )r6rrrrrrfszRequiresPythonRequirement.namecCs|jj|jkr|jgSgSr )r6r3r1rrrrrksz&RequiresPythonRequirement.find_matchescCs(|j|jjkstd|jj|jddS)NzNot Python candidateTr/)rr6r#r1r2r3rrrrrqsz)RequiresPythonRequirement.is_satisfied_byN) rrr__doc__rrr rrrrrrrr5Ws r5N)pip._vendor.packaging.utilsrpip._internal.utils.typingrbaserrtypingrZ pip._vendor.packaging.specifiersrZpip._internal.req.req_installr r r(r r r!r5rrrrs       *