Struct peroxide::macros::matlab_macro::StdRng[][src]

pub struct StdRng(_);
Expand description

The standard RNG. The PRNG algorithm in StdRng is chosen to be efficient on the current platform, to be statistically strong and unpredictable (meaning a cryptographically secure PRNG).

The current algorithm used is the ChaCha block cipher with 12 rounds. Please see this relevant rand issue for the discussion. This may change as new evidence of cipher security and performance becomes available.

The algorithm is deterministic but should not be considered reproducible due to dependence on configuration and possible replacement in future library versions. For a secure reproducible generator, we recommend use of the rand_chacha crate directly.

Trait Implementations

impl Clone for StdRng[src]

pub fn clone(&self) -> StdRng[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for StdRng[src]

pub fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>[src]

Formats the value using the given formatter. Read more

impl PartialEq<StdRng> for StdRng[src]

pub fn eq(&self, other: &StdRng) -> bool[src]

This method tests for self and other values to be equal, and is used by ==. Read more

pub fn ne(&self, other: &StdRng) -> bool[src]

This method tests for !=.

impl RngCore for StdRng[src]

pub fn next_u32(&mut self) -> u32[src]

Return the next random u32. Read more

pub fn next_u64(&mut self) -> u64[src]

Return the next random u64. Read more

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

Fill dest with random data. Read more

pub fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>[src]

Fill dest entirely with random data. Read more

impl SeedableRng for StdRng[src]

type Seed = <ChaCha12Rng as SeedableRng>::Seed

Seed type, which is restricted to types mutably-dereferencable as u8 arrays (we recommend [u8; N] for some N). Read more

pub fn from_seed(seed: <StdRng as SeedableRng>::Seed) -> StdRng[src]

Create a new PRNG using the given seed. Read more

pub fn from_rng<R>(rng: R) -> Result<StdRng, Error> where
    R: RngCore
[src]

Create a new PRNG seeded from another Rng. Read more

fn seed_from_u64(state: u64) -> Self[src]

Create a new PRNG using a u64 seed. Read more

fn from_entropy() -> Self[src]

Creates a new instance of the RNG seeded via getrandom. Read more

impl CryptoRng for StdRng[src]

impl Eq for StdRng[src]

impl StructuralEq for StdRng[src]

impl StructuralPartialEq for StdRng[src]

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> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<R> Rng for R where
    R: RngCore + ?Sized
[src]

fn gen<T>(&mut self) -> T where
    Standard: Distribution<T>, 
[src]

Return a random value supporting the Standard distribution. Read more

fn gen_range<T, R>(&mut self, range: R) -> T where
    T: SampleUniform,
    R: SampleRange<T>, 
[src]

Generate a random value in the given range. Read more

fn sample<T, D>(&mut self, distr: D) -> T where
    D: Distribution<T>, 
[src]

Sample a new value, using the given distribution. Read more

fn sample_iter<T, D>(self, distr: D) -> DistIter<D, Self, T> where
    D: Distribution<T>, 
[src]

Create an iterator that generates values using the given distribution. Read more

fn fill<T>(&mut self, dest: &mut T) where
    T: Fill + ?Sized
[src]

Fill any type implementing Fill with random data Read more

fn try_fill<T>(&mut self, dest: &mut T) -> Result<(), Error> where
    T: Fill + ?Sized
[src]

Fill any type implementing Fill with random data Read more

fn gen_bool(&mut self, p: f64) -> bool[src]

Return a bool with a probability p of being true. Read more

fn gen_ratio(&mut self, numerator: u32, denominator: u32) -> bool[src]

Return a bool with a probability of numerator/denominator of being true. I.e. gen_ratio(2, 3) has chance of 2 in 3, or about 67%, of returning true. If numerator == denominator, then the returned value is guaranteed to be true. If numerator == 0, then the returned value is guaranteed to be false. Read more

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V