Struct std::rand::IsaacRng [] [src]

pub struct IsaacRng {
    cnt: u32,
    rsl: [Wrapping<u32>; 256],
    mem: [Wrapping<u32>; 256],
    a: Wrapping<u32>,
    b: Wrapping<u32>,
    c: Wrapping<u32>,
}
Unstable (rand)

: use rand from crates.io

A random number generator that uses the ISAAC algorithm[1].

The ISAAC algorithm is generally accepted as suitable for cryptographic purposes, but this implementation has not be verified as such. Prefer a generator like OsRng that defers to the operating system for cases that need high security.

[1]: Bob Jenkins, ISAAC: A fast cryptographic random number generator

Fields

cnt
Unstable (rand)

: use rand from crates.io

rsl
Unstable (rand)

: use rand from crates.io

mem
Unstable (rand)

: use rand from crates.io

a
Unstable (rand)

: use rand from crates.io

b
Unstable (rand)

: use rand from crates.io

c
Unstable (rand)

: use rand from crates.io

Methods

impl IsaacRng

fn new_unseeded() -> IsaacRng

Unstable (rand)

: use rand from crates.io

Create an ISAAC random number generator using the default fixed seed.

Trait Implementations

impl Clone for IsaacRng

fn clone(&self) -> IsaacRng

fn clone_from(&mut self, source: &Self)

impl Rng for IsaacRng

fn next_u32(&mut self) -> u32

fn next_u64(&mut self) -> u64

fn next_f32(&mut self) -> f32

fn next_f64(&mut self) -> f64

fn fill_bytes(&mut self, dest: &mut [u8])

fn gen<T>(&mut self) -> T where T: Rand

fn gen_iter<T>(&'a mut self) -> Generator<'a, T, Self> where T: Rand

fn gen_range<T>(&mut self, low: T, high: T) -> T where T: SampleRange + PartialOrd<T>

fn gen_weighted_bool(&mut self, n: usize) -> bool

fn gen_ascii_chars(&'a mut self) -> AsciiGenerator<'a, Self>

fn choose<T>(&mut self, values: &'a [T]) -> Option<&'a T>

fn shuffle<T>(&mut self, values: &mut [T])

impl<'a> SeedableRng<&'a [u32]> for IsaacRng

fn reseed(&mut self, seed: &'a [u32])

fn from_seed(seed: &'a [u32]) -> IsaacRng

Derived Implementations

impl Copy for IsaacRng