pub trait Numeric:
Primitive
+ 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> {
const BITS_SIZE: u32;
const ONE: Self;
// Required methods
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 unsigned_value(self) -> UnsignedValue;
}
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 Associated Constants§
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
Sourcefn unsigned_value(self) -> UnsignedValue
fn unsigned_value(self) -> UnsignedValue
Convert to a generic unsigned write value for stream recording purposes
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.