a
    $lJhè  ã                   @  sÆ   d dl mZ d dlmZmZmZ ddlmZmZm	Z	 erDddl
mZ G dd„ deƒZG d	d
„ d
eeeef ƒZG dd„ deeeef ƒZG dd„ deƒZG dd„ deeeef ƒZG dd„ deƒZdS )é    )Úannotations)ÚTYPE_CHECKINGÚ
CollectionÚGenericé   )ÚCTÚRTÚRequirementInformationé   )Ú	Criterionc                   @  s   e Zd ZdZdS )ÚResolverExceptionzÆA base class for all exceptions raised by this module.

    Exceptions derived by this class should all be handled in this module. Any
    bubbling pass the resolver should be treated as a bug.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© r   r   ú]/var/www/shaz/venv/lib/python3.9/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.pyr      s   r   c                      s2   e Zd Zdddœ‡ fdd„Zddœdd	„Z‡  ZS )
ÚRequirementsConflictedúCriterion[RT, CT]ÚNone)Ú	criterionÚreturnc                   s   t ƒ  |¡ || _d S ©N)ÚsuperÚ__init__r   )Úselfr   ©Ú	__class__r   r   r      s    zRequirementsConflicted.__init__Ústr©r   c                 C  s    d  d dd„ | j ¡ D ƒ¡¡S )NzRequirements conflict: {}ú, c                 s  s   | ]}t |ƒV  qd S r   ©Úrepr©Ú.0Úrr   r   r   Ú	<genexpr>   ó    z1RequirementsConflicted.__str__.<locals>.<genexpr>)ÚformatÚjoinr   Úiter_requirement©r   r   r   r   Ú__str__   s    ÿzRequirementsConflicted.__str__©r   r   r   r   r,   Ú__classcell__r   r   r   r   r      s   r   c                      s2   e Zd Zdddœ‡ fdd„Zddœdd	„Z‡  ZS )
ÚInconsistentCandidater   r   )Ú	candidater   c                   s   t ƒ  ||¡ || _|| _d S r   )r   r   r0   r   )r   r0   r   r   r   r   r      s    zInconsistentCandidate.__init__r   r   c                 C  s$   d  | jd dd„ | j ¡ D ƒ¡¡S )Nz+Provided candidate {!r} does not satisfy {}r    c                 s  s   | ]}t |ƒV  qd S r   r!   r#   r   r   r   r&   '   r'   z0InconsistentCandidate.__str__.<locals>.<genexpr>)r(   r0   r)   r   r*   r+   r   r   r   r,   $   s    þzInconsistentCandidate.__str__r-   r   r   r   r   r/      s   r/   c                   @  s   e Zd ZdS )ÚResolutionErrorN)r   r   r   r   r   r   r   r1   +   s   r1   c                      s"   e Zd Zddœ‡ fdd„Z‡  ZS )ÚResolutionImpossiblez*Collection[RequirementInformation[RT, CT]])Úcausesc                   s   t ƒ  |¡ || _d S r   )r   r   r3   )r   r3   r   r   r   r   0   s    zResolutionImpossible.__init__©r   r   r   r   r.   r   r   r   r   r2   /   s   r2   c                      s$   e Zd Zdddœ‡ fdd„Z‡  ZS )ÚResolutionTooDeepÚintr   )Úround_countr   c                   s   t ƒ  |¡ || _d S r   )r   r   r7   )r   r7   r   r   r   r   7   s    zResolutionTooDeep.__init__r4   r   r   r   r   r5   6   s   r5   N)Ú
__future__r   Útypingr   r   r   Ústructsr   r   r	   r   r   Ú	Exceptionr   r   r/   r1   r2   r5   r   r   r   r   Ú<module>   s   