[−][src]Struct rand::reseeding::ReseedingRng
A wrapper around any RNG which reseeds the underlying RNG after it has generated a certain number of random bytes.
Fields
reseeder: Rsdr
Controls the behaviour when reseeding the RNG.
Methods
impl<R, Rsdr> ReseedingRng<R, Rsdr> where
R: Rng,
Rsdr: Reseeder<R>,
[src][−]
R: Rng,
Rsdr: Reseeder<R>,
pub fn new(
rng: R,
generation_threshold: u64,
reseeder: Rsdr
) -> ReseedingRng<R, Rsdr>
[src][−]
rng: R,
generation_threshold: u64,
reseeder: Rsdr
) -> ReseedingRng<R, Rsdr>
Create a new ReseedingRng
with the given parameters.
Arguments
rng
: the random number generator to use.generation_threshold
: the number of bytes of entropy at which to reseed the RNG.reseeder
: the reseeding object to use.
pub fn reseed_if_necessary(&mut self)
[src][−]
Reseed the internal RNG if the number of bytes that have been generated exceed the threshold.
Trait Implementations
impl<R, Rsdr> Debug for ReseedingRng<R, Rsdr> where
R: Debug,
Rsdr: Debug,
[src][+]
R: Debug,
Rsdr: Debug,
impl<R, Rsdr> Rng for ReseedingRng<R, Rsdr> where
R: Rng,
Rsdr: Reseeder<R>,
[src][+]
R: Rng,
Rsdr: Reseeder<R>,
impl<S, R, Rsdr> SeedableRng<(Rsdr, S)> for ReseedingRng<R, Rsdr> where
R: SeedableRng<S>,
Rsdr: Reseeder<R> + Default,
[src][+]
R: SeedableRng<S>,
Rsdr: Reseeder<R> + Default,
Auto Trait Implementations
impl<R, Rsdr> RefUnwindSafe for ReseedingRng<R, Rsdr> where
R: RefUnwindSafe,
Rsdr: RefUnwindSafe,
R: RefUnwindSafe,
Rsdr: RefUnwindSafe,
impl<R, Rsdr> Send for ReseedingRng<R, Rsdr> where
R: Send,
Rsdr: Send,
R: Send,
Rsdr: Send,
impl<R, Rsdr> Sync for ReseedingRng<R, Rsdr> where
R: Sync,
Rsdr: Sync,
R: Sync,
Rsdr: Sync,
impl<R, Rsdr> Unpin for ReseedingRng<R, Rsdr> where
R: Unpin,
Rsdr: Unpin,
R: Unpin,
Rsdr: Unpin,
impl<R, Rsdr> UnwindSafe for ReseedingRng<R, Rsdr> where
R: UnwindSafe,
Rsdr: UnwindSafe,
R: UnwindSafe,
Rsdr: UnwindSafe,
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,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,