Trait number_traits::Integer
[−]
[src]
pub trait Integer: Num + Not<Output = Self> + BitAnd<Output = Self> + BitOr<Output = Self> + BitXor<Output = Self> + Shl<usize, Output = Self> + Shr<usize, Output = Self> { fn count_ones(&self) -> u32; fn count_zeros(&self) -> u32; fn leading_zeros(&self) -> u32; fn trailing_zeros(&self) -> u32; fn rotate_left(&self, n: u32) -> Self; fn rotate_right(&self, n: u32) -> Self; fn signed_shl(&self, n: u32) -> Self; fn signed_shr(&self, n: u32) -> Self; fn integer_shl(&self, n: u32) -> Self; fn integer_shr(&self, n: u32) -> Self; fn swap_bytes(&self) -> Self; fn from_be(x: &Self) -> Self; fn from_le(x: &Self) -> Self; fn to_be(&self) -> Self; fn to_le(&self) -> Self; fn pow(&self, exp: u32) -> Self; fn gcd(&self, other: &Self) -> Self; fn lcm(&self, other: &Self) -> Self; fn is_multiple_of(&self, other: &Self) -> bool; fn is_even(&self) -> bool; fn is_odd(&self) -> bool; }
Required Methods
fn count_ones(&self) -> u32
fn count_zeros(&self) -> u32
fn leading_zeros(&self) -> u32
fn trailing_zeros(&self) -> u32
fn rotate_left(&self, n: u32) -> Self
fn rotate_right(&self, n: u32) -> Self
fn signed_shl(&self, n: u32) -> Self
fn signed_shr(&self, n: u32) -> Self
fn integer_shl(&self, n: u32) -> Self
fn integer_shr(&self, n: u32) -> Self
fn swap_bytes(&self) -> Self
fn from_be(x: &Self) -> Self
fn from_le(x: &Self) -> Self
fn to_be(&self) -> Self
fn to_le(&self) -> Self
fn pow(&self, exp: u32) -> Self
fn gcd(&self, other: &Self) -> Self
Examples
use number_traits::Integer; assert_eq!(Integer::gcd(&6, &8), 2); assert_eq!(Integer::gcd(&7, &3), 1);
fn lcm(&self, other: &Self) -> Self
Examples
use number_traits::Integer; assert_eq!(Integer::lcm(&7, &3), 21); assert_eq!(Integer::lcm(&2, &4), 4);
fn is_multiple_of(&self, other: &Self) -> bool
Examples
use number_traits::Integer; assert_eq!(Integer::is_multiple_of(&9, &3), true); assert_eq!(Integer::is_multiple_of(&3, &9), false);
fn is_even(&self) -> bool
Examples
use number_traits::Integer; assert_eq!(Integer::is_even(&3), false); assert_eq!(Integer::is_even(&4), true);
fn is_odd(&self) -> bool
Examples
use number_traits::Integer; assert_eq!(Integer::is_odd(&3), true); assert_eq!(Integer::is_odd(&4), false);
Implementations on Foreign Types
impl<T> Integer for Wrapping<T> where
T: Integer,
Self: Num + Not<Output = Self> + BitAnd<Output = Self> + BitOr<Output = Self> + BitXor<Output = Self> + Shl<usize, Output = Self> + Shr<usize, Output = Self>,
[src]
T: Integer,
Self: Num + Not<Output = Self> + BitAnd<Output = Self> + BitOr<Output = Self> + BitXor<Output = Self> + Shl<usize, Output = Self> + Shr<usize, Output = Self>,
fn count_ones(&self) -> u32
[src]
fn count_zeros(&self) -> u32
[src]
fn leading_zeros(&self) -> u32
[src]
fn trailing_zeros(&self) -> u32
[src]
fn rotate_left(&self, n: u32) -> Self
[src]
fn rotate_right(&self, n: u32) -> Self
[src]
fn signed_shl(&self, n: u32) -> Self
[src]
fn signed_shr(&self, n: u32) -> Self
[src]
fn integer_shl(&self, n: u32) -> Self
[src]
fn integer_shr(&self, n: u32) -> Self
[src]
fn swap_bytes(&self) -> Self
[src]
fn from_be(x: &Self) -> Self
[src]
fn from_le(x: &Self) -> Self
[src]
fn to_be(&self) -> Self
[src]
fn to_le(&self) -> Self
[src]
fn pow(&self, exp: u32) -> Self
[src]
fn gcd(&self, other: &Self) -> Self
[src]
fn lcm(&self, other: &Self) -> Self
[src]
fn is_multiple_of(&self, other: &Self) -> bool
[src]
fn is_even(&self) -> bool
[src]
fn is_odd(&self) -> bool
[src]
Implementors
impl Integer for u8
impl Integer for u16
impl Integer for u32
impl Integer for u64
impl Integer for u128
impl Integer for usize
impl Integer for i8
impl Integer for i16
impl Integer for i32
impl Integer for i64
impl Integer for i128
impl Integer for isize