Trait SeedableRng
Source pub trait SeedableRng<Seed>: Rng {
// Required methods
fn reseed(&mut self, _: Seed);
fn from_seed(seed: Seed) -> Self;
}
Expand description
A random number generator that can be explicitly seeded to produce
the same stream of randomness multiple times.
Reseed an RNG with the given seed.
§Example
use rand::{Rng, SeedableRng, StdRng};
let seed: &[_] = &[1, 2, 3, 4];
let mut rng: StdRng = SeedableRng::from_seed(seed);
println!("{}", rng.gen::<f64>());
rng.reseed(&[5, 6, 7, 8]);
println!("{}", rng.gen::<f64>());
Create a new RNG with the given seed.
§Example
use rand::{Rng, SeedableRng, StdRng};
let seed: &[_] = &[1, 2, 3, 4];
let mut rng: StdRng = SeedableRng::from_seed(seed);
println!("{}", rng.gen::<f64>());
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.