pub struct StdRng { /* private fields */ }
Expand description
The standard RNG. This is designed to be efficient on the current platform.
Implementations
sourceimpl StdRng
impl StdRng
sourcepub fn new() -> Result<StdRng>
pub fn new() -> Result<StdRng>
Create a randomly seeded instance of StdRng
.
This is a very expensive operation as it has to read
randomness from the operating system and use this in an
expensive seeding operation. If one is only generating a small
number of random numbers, or doesn’t need the utmost speed for
generating each number, thread_rng
and/or random
may be more
appropriate.
Reading the randomness from the OS may fail, and any error is
propagated via the io::Result
return value.
Trait Implementations
sourceimpl Rng for StdRng
impl Rng for StdRng
sourcefn next_f32(&mut self) -> f32
fn next_f32(&mut self) -> f32
Return the next random f32 selected from the half-open
interval
[0, 1)
. Read moresourcefn next_f64(&mut self) -> f64
fn next_f64(&mut self) -> f64
Return the next random f64 selected from the half-open
interval
[0, 1)
. Read moresourcefn fill_bytes(&mut self, dest: &mut [u8])
fn fill_bytes(&mut self, dest: &mut [u8])
Fill
dest
with random data. Read moresourcefn gen<T: Rand>(&mut self) -> Twhere
Self: Sized,
fn gen<T: Rand>(&mut self) -> Twhere
Self: Sized,
Return a random value of a
Rand
type. Read moresourcefn gen_iter<T: Rand>(&mut self) -> Generator<'_, T, Self>ⓘNotable traits for Generator<'a, T, R>impl<'a, T: Rand, R: Rng> Iterator for Generator<'a, T, R> type Item = T;
where
Self: Sized,
fn gen_iter<T: Rand>(&mut self) -> Generator<'_, T, Self>ⓘNotable traits for Generator<'a, T, R>impl<'a, T: Rand, R: Rng> Iterator for Generator<'a, T, R> type Item = T;
where
Self: Sized,
Return an iterator that will yield an infinite number of randomly
generated items. Read more
sourcefn gen_range<T: PartialOrd + SampleRange>(&mut self, low: T, high: T) -> Twhere
Self: Sized,
fn gen_range<T: PartialOrd + SampleRange>(&mut self, low: T, high: T) -> Twhere
Self: Sized,
sourcefn gen_weighted_bool(&mut self, n: u32) -> boolwhere
Self: Sized,
fn gen_weighted_bool(&mut self, n: u32) -> boolwhere
Self: Sized,
Return a bool with a 1 in n chance of true Read more
sourcefn gen_ascii_chars(&mut self) -> AsciiGenerator<'_, Self>ⓘNotable traits for AsciiGenerator<'a, R>impl<'a, R: Rng> Iterator for AsciiGenerator<'a, R> type Item = char;
where
Self: Sized,
fn gen_ascii_chars(&mut self) -> AsciiGenerator<'_, Self>ⓘNotable traits for AsciiGenerator<'a, R>impl<'a, R: Rng> Iterator for AsciiGenerator<'a, R> type Item = char;
where
Self: Sized,
Return an iterator of random characters from the set A-Z,a-z,0-9. Read more
sourcefn choose<'a, T>(&mut self, values: &'a [T]) -> Option<&'a T>where
Self: Sized,
fn choose<'a, T>(&mut self, values: &'a [T]) -> Option<&'a T>where
Self: Sized,
Return a random element from
values
. Read moresourcefn choose_mut<'a, T>(&mut self, values: &'a mut [T]) -> Option<&'a mut T>where
Self: Sized,
fn choose_mut<'a, T>(&mut self, values: &'a mut [T]) -> Option<&'a mut T>where
Self: Sized,
Return a mutable pointer to a random element from
values
. Read moresourceimpl<'a> SeedableRng<&'a [usize]> for StdRng
impl<'a> SeedableRng<&'a [usize]> for StdRng
impl Copy for StdRng
Auto Trait Implementations
impl RefUnwindSafe for StdRng
impl Send for StdRng
impl Sync for StdRng
impl Unpin for StdRng
impl UnwindSafe for StdRng
Blanket Implementations
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstablefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> ToOwned for Twhere
T: Clone,
impl<T> ToOwned for Twhere
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
fn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
Uses borrowed data to replace owned data, usually by cloning. Read more