a
€™Re© ã @ s2 d Z ddlZddlmZmZmZ G dd„ dƒZdS )zUtilities for defining models
é N)ÚAnyÚCallableÚTypec @ sª e Zd ZdZddgZeed ddœdd„Zedœd d
„Z ee
dœdd
„Zee
dœdd„Zee
dœdd„Z
ee
dœdd„Zee
dœdd„Zeeeege
f e
dœdd„ZdS )Ú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-python39-pip-21.3.1-2.el8.x86_64/opt/alt/python39/lib/python3.9/site-packages/pip/_internal/utils/models.pyÚ__init__
s zKeyBasedCompareMixin.__init__)r
c C s
t | jƒS r )Úhashr )r r
r
r Ú__hash__ s zKeyBasedCompareMixin.__hash__)Úotherr
c C s | |tj¡S r )Ú_compareÚoperatorÚ__lt__©r r r
r
r r s zKeyBasedCompareMixin.__lt__c C s | |tj¡S r )r r Ú__le__r r
r
r r s zKeyBasedCompareMixin.__le__c C s | |tj¡S r )r r Ú__gt__r r
r
r r s zKeyBasedCompareMixin.__gt__c C s | |tj¡S r )r r Ú__ge__r r
r
r r s zKeyBasedCompareMixin.__ge__c C s | |tj¡S r )r r Ú__eq__r r
r
r r s zKeyBasedCompareMixin.__eq__)r Úmethodr
c C s t || jƒstS || j|jƒS r )Ú
isinstancer ÚNotImplementedr )r r r r
r
r r # s zKeyBasedCompareMixin._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 Ú