Trait bitstream_io::Numeric
source · pub trait Numeric: Sized + Copy + Default + Debug + PartialOrd + Shl<u32, Output = Self> + ShlAssign<u32> + Shr<u32, Output = Self> + ShrAssign<u32> + Rem<Self, Output = Self> + RemAssign<Self> + BitOrAssign<Self> + BitXor<Self, Output = Self> + Not<Output = Self> + Sub<Self, Output = Self> {
fn one() -> Self;
fn is_zero(self) -> bool;
fn from_u8(u: u8) -> Self;
fn to_u8(self) -> u8;
fn count_ones(self) -> u32;
fn leading_zeros(self) -> u32;
fn trailing_zeros(self) -> u32;
fn bits_size() -> u32;
}
Expand description
This trait extends many common integer types (both unsigned and signed) with a few trivial methods so that they can be used with the bitstream handling traits.
Required Methods
sourcefn count_ones(self) -> u32
fn count_ones(self) -> u32
Counts the number of 1 bits
sourcefn leading_zeros(self) -> u32
fn leading_zeros(self) -> u32
Counts the number of leading zeros
sourcefn trailing_zeros(self) -> u32
fn trailing_zeros(self) -> u32
Counts the number of trailing zeros