Trait rand::SeedableRng [-] [+] [src]

pub trait SeedableRng<Seed>: Rng {
    fn reseed(&mut self, Seed);
    fn from_seed(seed: Seed) -> Self;
}

A random number generator that can be explicitly seeded to produce the same stream of randomness multiple times.

Required Methods

fn reseed(&mut self, Seed)

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>());

fn from_seed(seed: Seed) -> Self

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>());

Implementors