Struct rand::prng::XorShiftRng [−][src]
An Xorshift random number generator.
The Xorshift1 algorithm is not suitable for cryptographic purposes
but is very fast. If you do not know for sure that it fits your
requirements, use a more secure one such as IsaacRng
or OsRng
.
Marsaglia, George (July 2003). “Xorshift RNGs”. Journal of Statistical Software. Vol. 8 (Issue 14). ↩
Implementations
impl XorShiftRng
[src]
pub fn new_unseeded() -> XorShiftRng
[src]
👎 Deprecated since 0.5.0:
use the FromEntropy or SeedableRng trait
Creates a new XorShiftRng instance which is not seeded.
The initial values of this RNG are constants, so all generators created
by this function will yield the same stream of random numbers. It is
highly recommended that this is created through SeedableRng
instead of
this function
Trait Implementations
impl Clone for XorShiftRng
[src]
fn clone(&self) -> XorShiftRng
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for XorShiftRng
[src]
impl RngCore for XorShiftRng
[src]
fn next_u32(&mut self) -> u32
[src]
fn next_u64(&mut self) -> u64
[src]
fn fill_bytes(&mut self, dest: &mut [u8])
[src]
fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>
[src]
impl SeedableRng for XorShiftRng
[src]
Auto Trait Implementations
impl RefUnwindSafe for XorShiftRng
impl Send for XorShiftRng
impl Sync for XorShiftRng
impl Unpin for XorShiftRng
impl UnwindSafe for XorShiftRng
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<R> FromEntropy for R where
R: SeedableRng,
[src]
R: SeedableRng,
pub fn from_entropy() -> R
[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,
fn gen<T>(&mut self) -> T where
Standard: Distribution<T>,
[src]
Standard: Distribution<T>,
fn gen_range<T: PartialOrd + SampleUniform>(&mut self, low: T, high: T) -> T
[src]
fn sample<T, D: Distribution<T>>(&mut self, distr: D) -> T
[src]
fn sample_iter<'a, T, D: Distribution<T>>(
&'a mut self,
distr: &'a D
) -> DistIter<'a, D, Self, T>ⓘ where
Self: Sized,
[src]
&'a mut self,
distr: &'a D
) -> DistIter<'a, D, Self, T>ⓘ where
Self: Sized,
fn fill<T: AsByteSliceMut + ?Sized>(&mut self, dest: &mut T)
[src]
fn try_fill<T: AsByteSliceMut + ?Sized>(
&mut self,
dest: &mut T
) -> Result<(), Error>
[src]
&mut self,
dest: &mut T
) -> Result<(), Error>
fn gen_bool(&mut self, p: f64) -> bool
[src]
fn choose<'a, T>(&mut self, values: &'a [T]) -> Option<&'a T>
[src]
fn choose_mut<'a, T>(&mut self, values: &'a mut [T]) -> Option<&'a mut T>
[src]
fn shuffle<T>(&mut self, values: &mut [T])
[src]
fn gen_iter<T>(&mut self) -> Generator<T, &mut Self>ⓘ where
Standard: Distribution<T>,
[src]
Standard: Distribution<T>,
fn gen_weighted_bool(&mut self, n: u32) -> bool
[src]
fn gen_ascii_chars(&mut self) -> AsciiGenerator<&mut Self>ⓘNotable traits for AsciiGenerator<R>
impl<R: RngCore> Iterator for AsciiGenerator<R> type Item = char;
[src]
Notable traits for AsciiGenerator<R>
impl<R: RngCore> Iterator for AsciiGenerator<R> type Item = char;
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>,