<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
U
    Ê—Re©  ã                   @   s2   d Z ddlZddlmZmZmZ G dd„ dƒZdS )zUtilities for defining models
é    N)ÚAnyÚCallableÚTypec                   @   sª   e Zd ZdZddgZeed  ddœdd„Zedœd	d
„Z	ee
dœdd„Zee
dœdd„Zee
dœdd„Zee
dœdd„Zee
dœdd„Zeeeege
f e
dœdd„ZdS )ÚKeyBasedCompareMixinz7Provides comparison capabilities that is based on a keyÚ_compare_keyÚ_defining_classN)ÚkeyÚdefining_classÚreturnc                 C   s   || _ || _d S ©N)r   r   )Úselfr   r	   © r   ú‰/builddir/build/BUILDROOT/alt-python38-pip-22.2.1-2.el8.x86_64/opt/alt/python38/lib/python3.8/site-packages/pip/_internal/utils/models.pyÚ__init__   s    zKeyBasedCompareMixin.__init__)r
   c                 C   s
   t | jƒS r   )Úhashr   )r   r   r   r   Ú__hash__   s    zKeyBasedCompareMixin.__hash__)Úotherr
   c                 C   s   |   |tj¡S r   )Ú_compareÚoperatorÚ__lt__©r   r   r   r   r   r      s    zKeyBasedCompareMixin.__lt__c                 C   s   |   |tj¡S r   )r   r   Ú__le__r   r   r   r   r      s    zKeyBasedCompareMixin.__le__c                 C   s   |   |tj¡S r   )r   r   Ú__gt__r   r   r   r   r      s    zKeyBasedCompareMixin.__gt__c                 C   s   |   |tj¡S r   )r   r   Ú__ge__r   r   r   r   r      s    zKeyBasedCompareMixin.__ge__c                 C   s   |   |tj¡S r   )r   r   Ú__eq__r   r   r   r   r       s    zKeyBasedCompareMixin.__eq__)r   Úmethodr
   c                 C   s   t || jƒstS || j|jƒS r   )Ú
isinstancer   ÚNotImplementedr   )r   r   r   r   r   r   r   #   s    zKeyBasedCompareMixin._compare)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   r   r   Úintr   Úboolr   r   r   r   r   r   r   r   r   r   r   r      s   r   )r!   r   Útypingr   r   r   r   r   r   r   r   Ú<module>   s   