pub struct BitsFast(pub u8);Expand description
Size in bits.
Uses unaligned reads/writes to access data in SeedSize implementation.
Tuple Fields§
§0: u8Trait Implementations§
Source§impl SeedSize for BitsFast
impl SeedSize for BitsFast
type VecElement = u8
fn new_zeroed_seed_vec(&self, number_of_seeds: usize) -> Box<[Self::VecElement]>
fn new_seed_vec( &self, seed: u16, number_of_seeds: usize, ) -> Box<[Self::VecElement]>
Source§unsafe fn get_seed(&self, vec: &[Self::VecElement], index: usize) -> u16
unsafe fn get_seed(&self, vec: &[Self::VecElement], index: usize) -> u16
Gets seed with given
index from vec.
Does not check whether the index is within bounds.Source§unsafe fn set_seed(&self, vec: &mut [Self::VecElement], index: usize, seed: u16)
unsafe fn set_seed(&self, vec: &mut [Self::VecElement], index: usize, seed: u16)
Sets seed with given
index in vec to seed.
Does not check whether the index is within bounds.Source§unsafe fn init_seed(
&self,
vec: &mut [Self::VecElement],
index: usize,
seed: u16,
)
unsafe fn init_seed( &self, vec: &mut [Self::VecElement], index: usize, seed: u16, )
Sets seed with given
index in zeroed vec to seed.
Does not check whether the index is within bounds and vec is zeroed.fn write_seed_vec( &self, output: &mut dyn Write, seeds: &[Self::VecElement], ) -> Result<()>
fn read_seed_vec( input: &mut dyn Read, number_of_seeds: usize, ) -> Result<(Self, Box<[Self::VecElement]>)>
const VEC_ELEMENT_BIT_SIZE: usize = _
fn validate(&self) -> Result<Self, &'static str>
fn concatenate_seed_vecs<LSI, LS>( &self, level_sizes: LS, seeds: Vec<Box<[Self::VecElement]>>, ) -> Box<[Self::VecElement]>
impl Copy for BitsFast
Auto Trait Implementations§
impl Freeze for BitsFast
impl RefUnwindSafe for BitsFast
impl Send for BitsFast
impl Sync for BitsFast
impl Unpin for BitsFast
impl UnsafeUnpin for BitsFast
impl UnwindSafe for BitsFast
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T, U> CastableInto<U> for Twhere
U: CastableFrom<T>,
impl<T, U> CastableInto<U> for Twhere
U: CastableFrom<T>,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DowncastableFrom<T> for T
impl<T> DowncastableFrom<T> for T
Source§fn downcast_from(value: T) -> T
fn downcast_from(value: T) -> T
Truncate the current UnsignedInt to a possibly smaller size
Source§impl<T, U> DowncastableInto<U> for Twhere
U: DowncastableFrom<T>,
impl<T, U> DowncastableInto<U> for Twhere
U: DowncastableFrom<T>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> UpcastableFrom<T> for T
impl<T> UpcastableFrom<T> for T
Source§fn upcast_from(value: T) -> T
fn upcast_from(value: T) -> T
Extend the current UnsignedInt to a possibly bigger size.