Spaces:
Sleeping
Sleeping
# This file is dual licensed under the terms of the Apache License, Version | |
# 2.0, and the BSD License. See the LICENSE file in the root of this repository | |
# for complete details. | |
class InfinityType: | |
def __repr__(self) -> str: | |
return "Infinity" | |
def __hash__(self) -> int: | |
return hash(repr(self)) | |
def __lt__(self, other: object) -> bool: | |
return False | |
def __le__(self, other: object) -> bool: | |
return False | |
def __eq__(self, other: object) -> bool: | |
return isinstance(other, self.__class__) | |
def __gt__(self, other: object) -> bool: | |
return True | |
def __ge__(self, other: object) -> bool: | |
return True | |
def __neg__(self: object) -> "NegativeInfinityType": | |
return NegativeInfinity | |
Infinity = InfinityType() | |
class NegativeInfinityType: | |
def __repr__(self) -> str: | |
return "-Infinity" | |
def __hash__(self) -> int: | |
return hash(repr(self)) | |
def __lt__(self, other: object) -> bool: | |
return True | |
def __le__(self, other: object) -> bool: | |
return True | |
def __eq__(self, other: object) -> bool: | |
return isinstance(other, self.__class__) | |
def __gt__(self, other: object) -> bool: | |
return False | |
def __ge__(self, other: object) -> bool: | |
return False | |
def __neg__(self: object) -> InfinityType: | |
return Infinity | |
NegativeInfinity = NegativeInfinityType() | |