PHP 8.2.30
Preview: models.py Size: 1.17 KB
/opt/alt/python37/lib/python3.7/site-packages/pip/_internal/utils/models.py

"""Utilities for defining models
"""
# The following comment should be removed at some point in the future.
# mypy: disallow-untyped-defs=False

import operator


class KeyBasedCompareMixin(object):
    """Provides comparison capabilities that is based on a key
    """

    __slots__ = ['_compare_key', '_defining_class']

    def __init__(self, key, defining_class):
        self._compare_key = key
        self._defining_class = defining_class

    def __hash__(self):
        return hash(self._compare_key)

    def __lt__(self, other):
        return self._compare(other, operator.__lt__)

    def __le__(self, other):
        return self._compare(other, operator.__le__)

    def __gt__(self, other):
        return self._compare(other, operator.__gt__)

    def __ge__(self, other):
        return self._compare(other, operator.__ge__)

    def __eq__(self, other):
        return self._compare(other, operator.__eq__)

    def __ne__(self, other):
        return self._compare(other, operator.__ne__)

    def _compare(self, other, method):
        if not isinstance(other, self._defining_class):
            return NotImplemented

        return method(self._compare_key, other._compare_key)

Directory Contents

Dirs: 1 × Files: 29

Name Size Perms Modified Actions
- drwxr-xr-x 2024-03-03 22:57:12
Edit Download
1.32 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
9.27 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
5.31 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
295 B lrw-r--r-- 2023-11-13 21:31:06
Edit Download
3.24 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
4.26 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.32 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.25 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.19 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
6.78 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
571 B lrw-r--r-- 2023-11-13 21:31:06
Edit Download
3.22 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
4.57 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
810 B lrw-r--r-- 2023-11-13 21:31:06
Edit Download
12.79 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
27.67 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.17 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
2.96 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
3.32 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.22 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
4.94 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
9.69 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
8.18 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.37 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
9.27 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
1.49 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
3.62 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
7.13 KB lrw-r--r-- 2023-11-13 21:31:06
Edit Download
0 B lrw-r--r-- 2023-11-13 21:31:06
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).