pub trait BitMask: BitSize {
fn mask(size: usize) -> Self;
fn mask_to(&self, size: usize) -> Self;
}
Expand description
Provides bit mask calculation and masking on values.
This trait defines type methods for generating a bit mask of a specified length and value methods for masking to a specified bit length.
Examples
use quark::BitMask;
let nibble_mask = u32::mask(4);
assert_eq!(nibble_mask, 0xf);
let value: u32 = 0x1234_5678;
assert_eq!(value.mask_to(12), 0x678);