pub trait Rng<const OUTPUT: usize>: Clone {
    fn rand(&mut self) -> [u8; OUTPUT];

    fn generate<Generated>(&mut self) -> Generated
    where
        Generated: RandomGen<Self, OUTPUT>
, { ... }
fn fill_bytes<Bytes>(&mut self, buffer: Bytes)
    where
        Bytes: AsMut<[u8]>
, { ... }
fn fill<Contents, Array>(&mut self, target: Array)
    where
        Contents: RandomGen<Self, OUTPUT>,
        Array: AsMut<[Contents]>
, { ... }
fn generate_range<Number, Bounds>(&mut self, range: Bounds) -> Number
    where
        Number: RandomRange<Self, OUTPUT>,
        Bounds: RangeBounds<Number>
, { ... }
fn shuffle<Contents, Array>(&mut self, target: Array)
    where
        Array: AsMut<[Contents]>
, { ... } }
Expand description

A trait that represents a random number generator.

Required methods

Generates a random sequence of bytes, seeding from the internal state.

Provided methods

Generates a random of the specified type, seeding from the internal state.

Fill an array of bytes with randomness.

Fill an array with the specified type.

Generates a random of the specified type, seeding from the internal state.

Shuffle a slice, using the RNG.

Implementors