Integer

Trait Integer 

Source
pub trait Integer:
    Add
    + Sub
    + Mul
    + Div
    + Shl
    + Shr
    + BitAnd
    + BitOr
    + BitXor
    + PartialEq
    + Eq
    + PartialOrd
    + Ord
    + Clone
    + Copy
    + Default
    + Debug
    + Display {
    const BITS: usize;
    const MASK: Self;

    // Required methods
    fn from_usize(value: usize) -> Self;
    fn to_usize(self) -> usize;
}
Expand description

An integer.

Required Associated Constants§

Source

const BITS: usize

A size in bits.

Source

const MASK: Self

A mask.

Required Methods§

Source

fn from_usize(value: usize) -> Self

Converts a usize to an integer.

Source

fn to_usize(self) -> usize

Converts an integer to a usize.

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 Integer for i8

Source§

const BITS: usize = 8usize

Source§

const MASK: Self = 127i8

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for i16

Source§

const BITS: usize = 16usize

Source§

const MASK: Self = 32_767i16

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for i32

Source§

const BITS: usize = 32usize

Source§

const MASK: Self = 2_147_483_647i32

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for i64

Source§

const BITS: usize = 64usize

Source§

const MASK: Self = 9_223_372_036_854_775_807i64

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for i128

Source§

const BITS: usize = 128usize

Source§

const MASK: Self = 170_141_183_460_469_231_731_687_303_715_884_105_727i128

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for isize

Source§

const BITS: usize = 64usize

Source§

const MASK: Self = 9_223_372_036_854_775_807isize

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for u8

Source§

const BITS: usize = 8usize

Source§

const MASK: Self = 255u8

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for u16

Source§

const BITS: usize = 16usize

Source§

const MASK: Self = 65_535u16

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for u32

Source§

const BITS: usize = 32usize

Source§

const MASK: Self = 4_294_967_295u32

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for u64

Source§

const BITS: usize = 64usize

Source§

const MASK: Self = 18_446_744_073_709_551_615u64

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for u128

Source§

const BITS: usize = 128usize

Source§

const MASK: Self = 340_282_366_920_938_463_463_374_607_431_768_211_455u128

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Source§

impl Integer for usize

Source§

const BITS: usize = 64usize

Source§

const MASK: Self = 18_446_744_073_709_551_615usize

Source§

fn from_usize(value: usize) -> Self

Source§

fn to_usize(self) -> usize

Implementors§