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
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.
fn generate_range<Number, Bounds>(&mut self, range: Bounds) -> Number where
Number: RandomRange<Self, OUTPUT>,
Bounds: RangeBounds<Number>,
fn generate_range<Number, Bounds>(&mut self, range: Bounds) -> Number where
Number: RandomRange<Self, OUTPUT>,
Bounds: RangeBounds<Number>,
Generates a random of the specified type, seeding from the internal state.