U ÀÒ.e|ã@s dZddlZGdd„deƒZdS)zUtilities for defining models éNc@sXeZdZdZdd„Zdd„Zdd„Zdd „Zd d „Zd d „Z dd„Z dd„Z dd„Z dS)ÚKeyBasedCompareMixinz/usr/lib/python3.8/site-packages/pip/_internal/utils/models.pyÚ__init__ szKeyBasedCompareMixin.__init__cCs t|jƒSr)Úhashr)rrrr Ú__hash__szKeyBasedCompareMixin.__hash__cCs| |tj¡Sr)Ú_compareÚoperatorÚ__lt__©rÚotherrrr rszKeyBasedCompareMixin.__lt__cCs| |tj¡Sr)r rÚ__le__rrrr rszKeyBasedCompareMixin.__le__cCs| |tj¡Sr)r rÚ__gt__rrrr rszKeyBasedCompareMixin.__gt__cCs| |tj¡Sr)r rÚ__ge__rrrr rszKeyBasedCompareMixin.__ge__cCs| |tj¡Sr)r rÚ__eq__rrrr r szKeyBasedCompareMixin.__eq__cCs| |tj¡Sr)r rÚ__ne__rrrr r#szKeyBasedCompareMixin.__ne__cCst||jƒstS||j|jƒSr)Ú isinstancerÚNotImplementedr)rrÚmethodrrr r &s zKeyBasedCompareMixin._compareN) Ú__name__Ú __module__Ú __qualname__Ú__doc__r r rrrrrrr rrrr r sr)rrÚobjectrrrrr Ús