Numeric

Trait Numeric 

Source
pub trait Numeric:
    Add<Output = Self>
    + Mul<Output = Self>
    + Sub<Output = Self>
    + Div<Output = Self>
    + BitAnd<Output = Self>
    + BitOr<Output = Self>
    + BitXor<Output = Self>
    + Not<Output = Self>
    + Copy
    + Shl<Output = Self>
    + Shr<Output = Self>
    + Sized
    + Debug
    + LowerHex
    + TryInto<usize>
    + TryFrom<usize>
    + Eq
    + Ord
    + Pod
    + Sealed {
    // Required methods
    fn zero() -> Self;
    fn one() -> Self;
    fn min() -> Self;
    fn max() -> Self;
    fn as_usize(self) -> usize;
    fn from_usize(x: usize) -> Self;
    fn as_u64(self) -> u64;
    fn from_u64(x: u64) -> Self;
    fn from_be(self) -> Self;
    fn from_le(self) -> Self;
}

Required Methods§

Source

fn zero() -> Self

Source

fn one() -> Self

Source

fn min() -> Self

Source

fn max() -> Self

Source

fn as_usize(self) -> usize

Source

fn from_usize(x: usize) -> Self

Source

fn as_u64(self) -> u64

Source

fn from_u64(x: u64) -> Self

Source

fn from_be(self) -> Self

Source

fn from_le(self) -> Self

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Numeric for i8

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for i16

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for i32

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for i64

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for i128

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for isize

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for u8

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for u16

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for u32

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for u64

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for u128

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Source§

impl Numeric for usize

Source§

fn zero() -> Self

Source§

fn one() -> Self

Source§

fn min() -> Self

Source§

fn max() -> Self

Source§

fn as_usize(self) -> usize

Source§

fn from_usize(x: usize) -> Self

Source§

fn as_u64(self) -> u64

Source§

fn from_u64(x: u64) -> Self

Source§

fn from_be(self) -> Self

Source§

fn from_le(self) -> Self

Implementors§