[][src]Trait pyo3::class::number::PyNumberProtocol

pub trait PyNumberProtocol<'p>: PyClass {
    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) -> 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 __complex__(&'p self) -> Self::Result
    where
        Self: PyNumberComplexProtocol<'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>
, { ... }
fn __round__(&'p self, ndigits: Option<Self::NDigits>) -> Self::Result
    where
        Self: PyNumberRoundProtocol<'p>
, { ... } }

Number interface

Provided 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) -> 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 __complex__(&'p self) -> Self::Result where
    Self: PyNumberComplexProtocol<'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>, 

fn __round__(&'p self, ndigits: Option<Self::NDigits>) -> Self::Result where
    Self: PyNumberRoundProtocol<'p>, 

Loading content...

Implementors

Loading content...