Struct bc_rand::SeededRandomNumberGenerator
source · pub struct SeededRandomNumberGenerator { /* private fields */ }Expand description
A random number generator that can be used as a source of deterministic pseudo-randomness for testing purposes.
Implementations§
source§impl SeededRandomNumberGenerator
impl SeededRandomNumberGenerator
sourcepub fn new(seed: [u64; 4]) -> Self
pub fn new(seed: [u64; 4]) -> Self
Creates a new seeded random number generator.
The seed should be a 256-bit value, represented as an array of 4 64-bit integers. For the output distribution to look random, the seed should not have any obvious patterns, like all zeroes or all ones.
This is not cryptographically secure, and should only be used for testing purposes.
pub fn next_u64(&mut self) -> u64
Trait Implementations§
source§impl Clone for SeededRandomNumberGenerator
impl Clone for SeededRandomNumberGenerator
source§fn clone(&self) -> SeededRandomNumberGenerator
fn clone(&self) -> SeededRandomNumberGenerator
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for SeededRandomNumberGenerator
impl Debug for SeededRandomNumberGenerator
source§impl RandomNumberGenerator for SeededRandomNumberGenerator
impl RandomNumberGenerator for SeededRandomNumberGenerator
source§fn random_data(&mut self, size: usize) -> Vec<u8>
fn random_data(&mut self, size: usize) -> Vec<u8>
Returns a vector of random bytes of the given size.
fn fill_random_data(&mut self, data: &mut [u8])
source§impl RngCore for SeededRandomNumberGenerator
impl RngCore for SeededRandomNumberGenerator
source§fn fill_bytes(&mut self, dest: &mut [u8])
fn fill_bytes(&mut self, dest: &mut [u8])
Fill
dest with random data. Read moreimpl CryptoRng for SeededRandomNumberGenerator
Auto Trait Implementations§
impl Freeze for SeededRandomNumberGenerator
impl RefUnwindSafe for SeededRandomNumberGenerator
impl Send for SeededRandomNumberGenerator
impl Sync for SeededRandomNumberGenerator
impl Unpin for SeededRandomNumberGenerator
impl UnwindSafe for SeededRandomNumberGenerator
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> CryptoRngCore for T
impl<T> CryptoRngCore for T
source§fn as_rngcore(&mut self) -> &mut dyn RngCore
fn as_rngcore(&mut self) -> &mut dyn RngCore
Upcast to an
RngCore trait object.source§impl<R> Rng for R
impl<R> Rng for R
source§fn gen<T>(&mut self) -> Twhere
Standard: Distribution<T>,
fn gen<T>(&mut self) -> Twhere
Standard: Distribution<T>,
source§fn gen_range<T, R>(&mut self, range: R) -> Twhere
T: SampleUniform,
R: SampleRange<T>,
fn gen_range<T, R>(&mut self, range: R) -> Twhere
T: SampleUniform,
R: SampleRange<T>,
Generate a random value in the given range. Read more
source§fn sample<T, D>(&mut self, distr: D) -> Twhere
D: Distribution<T>,
fn sample<T, D>(&mut self, distr: D) -> Twhere
D: Distribution<T>,
Sample a new value, using the given distribution. Read more
source§fn sample_iter<T, D>(self, distr: D) -> DistIter<D, Self, T>where
D: Distribution<T>,
Self: Sized,
fn sample_iter<T, D>(self, distr: D) -> DistIter<D, Self, T>where
D: Distribution<T>,
Self: Sized,
Create an iterator that generates values using the given distribution. Read more
source§fn gen_bool(&mut self, p: f64) -> bool
fn gen_bool(&mut self, p: f64) -> bool
Return a bool with a probability
p of being true. Read moresource§fn gen_ratio(&mut self, numerator: u32, denominator: u32) -> bool
fn gen_ratio(&mut self, numerator: u32, denominator: u32) -> bool
Return a bool with a probability of
numerator/denominator of being
true. I.e. gen_ratio(2, 3) has chance of 2 in 3, or about 67%, of
returning true. If numerator == denominator, then the returned value
is guaranteed to be true. If numerator == 0, then the returned
value is guaranteed to be false. Read more