404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.12.149.200: ~ $
"""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)

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 2755
__init__.py File 0 B 0644
appdirs.py File 1.32 KB 0644
compat.py File 9.27 KB 0644
compatibility_tags.py File 5.31 KB 0644
datetime.py File 295 B 0644
deprecation.py File 3.24 KB 0644
direct_url_helpers.py File 4.26 KB 0644
distutils_args.py File 1.32 KB 0644
encoding.py File 1.25 KB 0644
entrypoints.py File 1.13 KB 0644
filesystem.py File 6.78 KB 0644
filetypes.py File 571 B 0644
glibc.py File 3.22 KB 0644
hashes.py File 4.57 KB 0644
inject_securetransport.py File 810 B 0644
logging.py File 12.79 KB 0644
misc.py File 27.34 KB 0644
models.py File 1.17 KB 0644
packaging.py File 2.96 KB 0644
parallel.py File 3.32 KB 0644
pkg_resources.py File 1.22 KB 0644
setuptools_build.py File 4.94 KB 0644
subprocess.py File 9.69 KB 0644
temp_dir.py File 8.18 KB 0644
typing.py File 1.37 KB 0644
unpacking.py File 9.27 KB 0644
urls.py File 1.49 KB 0644
virtualenv.py File 3.62 KB 0644
wheel.py File 7.13 KB 0644