Source code for pygritia.binary

"""
Provides :py:class:`BinaryMixin` mixin class
It provides binary operator support to the :py:class:`Lazy` class
"""
from typing import Any
from .core import Lazy, LazyMixin
from .ops import lazy_operator


[docs]class BinaryMixin(LazyMixin): """ Binary operator support It contains compare operators(``__lt__``, ``__le__``, ``__eq__``, ``__ne__``, ``__gt__``, ``_ge__``), numeric operators(``__add__``, ``__sub__``, ``__mul__``, ``__matmul__``, ``__div__``, ``__truediv__``, ``__floordiv__``, ``__mod__``, ``__divmod__``, ``__pow__``) and bitwise operators(``__lshift__``, ``__rshift__``, ``__and__``, ``__or__``, ``__xor__``) """ @lazy_operator def __lt__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __le__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __eq__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __ne__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __gt__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __ge__(self, other: Any) -> bool: pass # pragma: no cover @lazy_operator def __add__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __sub__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __mul__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __matmul__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __div__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __truediv__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __floordiv__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __mod__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __divmod__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __pow__(self: Lazy, other: Any, *args: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __lshift__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __rshift__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __and__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __xor__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover @lazy_operator def __or__(self: Lazy, other: Any) -> Lazy: pass # pragma: no cover