pub trait SimdBitMask: Copy {
const WORDS: usize;
// Required method
fn word(self, index: usize) -> u32;
// Provided methods
fn to_u32_lossy(self) -> u32 { ... }
fn to_u64_lossy(self) -> u64 { ... }
fn to_u128_lossy(self) -> u128 { ... }
fn write_to_u32_slice(self, dst: &mut [u32]) -> usize { ... }
fn valid_bits(index: usize, bit_len: usize) -> u32 { ... }
fn any_in_mask(self, bit_len: usize) -> bool { ... }
fn all_in_mask(self, bit_len: usize) -> bool { ... }
fn first_set_in_mask(self, bit_len: usize) -> Option<usize> { ... }
fn first_unset_in_mask(self, bit_len: usize) -> Option<usize> { ... }
fn last_set_in_mask(self, bit_len: usize) -> Option<usize> { ... }
fn last_unset_in_mask(self, bit_len: usize) -> Option<usize> { ... }
}Required Associated Constants§
Required Methods§
Provided Methods§
fn to_u32_lossy(self) -> u32
fn to_u64_lossy(self) -> u64
fn to_u128_lossy(self) -> u128
fn write_to_u32_slice(self, dst: &mut [u32]) -> usize
fn valid_bits(index: usize, bit_len: usize) -> u32
fn any_in_mask(self, bit_len: usize) -> bool
fn all_in_mask(self, bit_len: usize) -> bool
fn first_set_in_mask(self, bit_len: usize) -> Option<usize>
fn first_unset_in_mask(self, bit_len: usize) -> Option<usize>
fn last_set_in_mask(self, bit_len: usize) -> Option<usize>
fn last_unset_in_mask(self, bit_len: usize) -> Option<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.