kgh ddlmZddlZddlmZmZmZmZmZm Z ddl m Z m Z m Z mZer+ddlmZddlmZdd lmZGd d e ee e e fZnejd gd ZGd dee e e fZdS)) annotationsN) TYPE_CHECKINGAnyGenericIterableMapping NamedTuple)CTKTRT DirectedGraph)AbstractProvider) BaseReporter) Criterionc.eZdZUded<ded<ded<dS)ResultzMapping[KT, CT]mappingzDirectedGraph[KT | None]graphzMapping[KT, Criterion[RT, CT]]criteriaN)__name__ __module__ __qualname____annotations__/builddir/build/BUILD/imunify360-venv-2.6.0/opt/imunify360/venv/lib/python3.11/site-packages/pip/_vendor/resolvelib/resolvers/abstract.pyrr s6    ''''000000rr)rrrc&eZdZdZeZddZddZdS)AbstractResolverz3The thing that performs the actual resolution work.providerAbstractProvider[RT, CT, KT]reporterBaseReporter[RT, CT, KT]returnNonec"||_||_dS)N)r!r#)selfr!r#s r__init__zAbstractResolver.__init__s !   r requirements Iterable[RT]kwargsrResult[RT, CT, KT]c t)aTake a collection of constraints, spit out the resolution result. This returns a representation of the final resolution state, with one guarenteed attribute ``mapping`` that contains resolved candidates as values. The keys are their respective identifiers. :param requirements: A collection of constraints. :param kwargs: Additional keyword arguments that subclasses may accept. :raises: ``self.base_exception`` or its subclass. )NotImplementedError)r(r*r,s rresolvezAbstractResolver.resolve#s "!rN)r!r"r#r$r%r&)r*r+r,rr%r-)rrr__doc__ Exceptionbase_exceptionr)r0rrrr r sG==N!!!! " " " " " "rr ) __future__r collectionstypingrrrrrr structsr r r r providersr reportersr criterionrr namedtupler rrrr<sN""""""MMMMMMMMMMMMMMMM//////////// P,,,,,,(((((($$$$$$11111WRRZ01111 $[ #H.N.N.N O OF"""""wr2rz*"""""r