Struct ndarray_rand::rand::rngs::StdRng [−][src]
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]
impl CryptoRng for StdRng
[src]
impl Debug for StdRng
[src]
impl Eq for StdRng
[src]
impl PartialEq<StdRng> for StdRng
[src]
impl RngCore for StdRng
[src]
pub fn next_u32(&mut self) -> u32
[src]
pub fn next_u64(&mut self) -> u64
[src]
pub fn fill_bytes(&mut self, dest: &mut [u8])
[src]
pub fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>
[src]
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]
pub fn from_rng<R>(rng: R) -> Result<StdRng, Error> where
R: RngCore,
[src]
R: RngCore,
pub fn seed_from_u64(state: u64) -> Self
[src]
pub fn from_entropy() -> Self
[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]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<R> Rng for R where
R: RngCore + ?Sized,
[src]
R: RngCore + ?Sized,
pub fn gen<T>(&mut self) -> T where
Standard: Distribution<T>,
[src]
Standard: Distribution<T>,
pub fn gen_range<T, R>(&mut self, range: R) -> T where
R: SampleRange<T>,
T: SampleUniform,
[src]
R: SampleRange<T>,
T: SampleUniform,
pub fn sample<T, D>(&mut self, distr: D) -> T where
D: Distribution<T>,
[src]
D: Distribution<T>,
pub fn sample_iter<T, D>(self, distr: D) -> DistIter<D, Self, T>ⓘ where
D: Distribution<T>,
[src]
D: Distribution<T>,
pub fn fill<T>(&mut self, dest: &mut T) where
T: Fill + ?Sized,
[src]
T: Fill + ?Sized,
pub fn try_fill<T>(&mut self, dest: &mut T) -> Result<(), Error> where
T: Fill + ?Sized,
[src]
T: Fill + ?Sized,
pub fn gen_bool(&mut self, p: f64) -> bool
[src]
pub fn gen_ratio(&mut self, numerator: u32, denominator: u32) -> bool
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
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]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
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]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,