pub trait PyNumberProtocol<'p>: PyClass {
Show 48 methods fn __add__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberAddProtocol<'p>
, { ... } fn __sub__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberSubProtocol<'p>
, { ... } fn __mul__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberMulProtocol<'p>
, { ... } fn __matmul__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberMatmulProtocol<'p>
, { ... } fn __truediv__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberTruedivProtocol<'p>
, { ... } fn __floordiv__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberFloordivProtocol<'p>
, { ... } fn __mod__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberModProtocol<'p>
, { ... } fn __divmod__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberDivmodProtocol<'p>
, { ... } fn __pow__(
        lhs: Self::Left,
        rhs: Self::Right,
        modulo: Option<Self::Modulo>
    ) -> Self::Result
    where
        Self: PyNumberPowProtocol<'p>
, { ... } fn __lshift__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberLShiftProtocol<'p>
, { ... } fn __rshift__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberRShiftProtocol<'p>
, { ... } fn __and__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberAndProtocol<'p>
, { ... } fn __xor__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberXorProtocol<'p>
, { ... } fn __or__(lhs: Self::Left, rhs: Self::Right) -> Self::Result
    where
        Self: PyNumberOrProtocol<'p>
, { ... } fn __radd__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRAddProtocol<'p>
, { ... } fn __rsub__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRSubProtocol<'p>
, { ... } fn __rmul__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRMulProtocol<'p>
, { ... } fn __rmatmul__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRMatmulProtocol<'p>
, { ... } fn __rtruediv__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRTruedivProtocol<'p>
, { ... } fn __rfloordiv__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRFloordivProtocol<'p>
, { ... } fn __rmod__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRModProtocol<'p>
, { ... } fn __rdivmod__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRDivmodProtocol<'p>
, { ... } fn __rpow__(
        &'p self,
        other: Self::Other,
        modulo: Option<Self::Modulo>
    ) -> Self::Result
    where
        Self: PyNumberRPowProtocol<'p>
, { ... } fn __rlshift__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRLShiftProtocol<'p>
, { ... } fn __rrshift__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRRShiftProtocol<'p>
, { ... } fn __rand__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRAndProtocol<'p>
, { ... } fn __rxor__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberRXorProtocol<'p>
, { ... } fn __ror__(&'p self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberROrProtocol<'p>
, { ... } fn __iadd__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIAddProtocol<'p>
, { ... } fn __isub__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberISubProtocol<'p>
, { ... } fn __imul__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIMulProtocol<'p>
, { ... } fn __imatmul__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIMatmulProtocol<'p>
, { ... } fn __itruediv__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberITruedivProtocol<'p>
, { ... } fn __ifloordiv__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIFloordivProtocol<'p>
, { ... } fn __imod__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIModProtocol<'p>
, { ... } fn __ipow__(
        &'p mut self,
        other: Self::Other,
        modulo: Option<Self::Modulo>
    ) -> Self::Result
    where
        Self: PyNumberIPowProtocol<'p>
, { ... } fn __ilshift__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberILShiftProtocol<'p>
, { ... } fn __irshift__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIRShiftProtocol<'p>
, { ... } fn __iand__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIAndProtocol<'p>
, { ... } fn __ixor__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIXorProtocol<'p>
, { ... } fn __ior__(&'p mut self, other: Self::Other) -> Self::Result
    where
        Self: PyNumberIOrProtocol<'p>
, { ... } fn __neg__(&'p self) -> Self::Result
    where
        Self: PyNumberNegProtocol<'p>
, { ... } fn __pos__(&'p self) -> Self::Result
    where
        Self: PyNumberPosProtocol<'p>
, { ... } fn __abs__(&'p self) -> Self::Result
    where
        Self: PyNumberAbsProtocol<'p>
, { ... } fn __invert__(&'p self) -> Self::Result
    where
        Self: PyNumberInvertProtocol<'p>
, { ... } fn __int__(&'p self) -> Self::Result
    where
        Self: PyNumberIntProtocol<'p>
, { ... } fn __float__(&'p self) -> Self::Result
    where
        Self: PyNumberFloatProtocol<'p>
, { ... } fn __index__(&'p self) -> Self::Result
    where
        Self: PyNumberIndexProtocol<'p>
, { ... }
}
👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

Available on crate feature pyproto only.
Expand description

Number interface

Provided Methods

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

👎 Deprecated since 0.16.0:

prefer #[pymethods] to #[pyproto]

Implementors