| | |
| | |
| | |
| |
|
| | import typing |
| |
|
| |
|
| | @typing.final |
| | class InfinityType: |
| | __slots__ = () |
| |
|
| | 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() |
| |
|
| |
|
| | @typing.final |
| | class NegativeInfinityType: |
| | __slots__ = () |
| |
|
| | 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() |
| |
|