o
    ×!7h  ã                   @  sÀ   d dl mZ d dlZd dlmZmZmZmZmZm	Z	 ddl
mZmZmZmZ erIddlmZ ddlmZ dd	lmZ G d
d„ de	eeeef ƒZne dg d¢¡ZG dd„ deeeef ƒZdS )é    )ÚannotationsN)ÚTYPE_CHECKINGÚAnyÚGenericÚIterableÚMappingÚ
NamedTupleé   )ÚCTÚKTÚRTÚDirectedGraph)ÚAbstractProvider)ÚBaseReporteré   )Ú	Criterionc                   @  s&   e Zd ZU ded< ded< ded< dS )ÚResultzMapping[KT, CT]ÚmappingzDirectedGraph[KT | None]ÚgraphzMapping[KT, Criterion[RT, CT]]ÚcriteriaN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© r   r   ú~/var/www/epreuve.sigeris.cm/public_html/epreuve/venv/lib/python3.10/site-packages/pip/_vendor/resolvelib/resolvers/abstract.pyr      s   
 r   )r   r   r   c                   @  s(   e Zd ZdZeZddd	„Zddd„ZdS )ÚAbstractResolverz3The thing that performs the actual resolution work.ÚproviderúAbstractProvider[RT, CT, KT]ÚreporterúBaseReporter[RT, CT, KT]ÚreturnÚNonec                 C  s   || _ || _d S )N)r   r   )Úselfr   r   r   r   r   Ú__init__   s   
zAbstractResolver.__init__ÚrequirementsúIterable[RT]Úkwargsr   úResult[RT, CT, KT]c                 K  s   t ‚)aè  Take 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'   r   r   r   Úresolve#   s   zAbstractResolver.resolveN)r   r   r   r    r!   r"   )r%   r&   r'   r   r!   r(   )r   r   r   Ú__doc__Ú	ExceptionÚbase_exceptionr$   r*   r   r   r   r   r      s
    
r   )Ú
__future__r   ÚcollectionsÚtypingr   r   r   r   r   r   Ústructsr
   r   r   r   Ú	providersr   Ú	reportersr   Ú	criterionr   r   Ú
namedtupler   r   r   r   r   Ú<module>   s     