Struct rand::prng::XorShiftRng [−][src]
pub struct XorShiftRng { /* fields omitted */ }
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). ↩
Methods
impl XorShiftRng
[src]
impl XorShiftRng
pub fn new_unseeded() -> XorShiftRng
[src]
pub fn new_unseeded() -> XorShiftRng
: 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]
impl Clone for XorShiftRng
fn clone(&self) -> XorShiftRng
[src]
fn clone(&self) -> XorShiftRng
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for XorShiftRng
[src]
impl Debug for XorShiftRng
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl RngCore for XorShiftRng
[src]
impl RngCore for XorShiftRng
fn next_u32(&mut self) -> u32
[src]
fn next_u32(&mut self) -> u32
Return the next random u32
. Read more
fn next_u64(&mut self) -> u64
[src]
fn next_u64(&mut self) -> u64
Return the next random u64
. Read more
fn fill_bytes(&mut self, dest: &mut [u8])
[src]
fn fill_bytes(&mut self, dest: &mut [u8])
Fill dest
with random data. Read more
fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>
[src]
fn try_fill_bytes(&mut self, dest: &mut [u8]) -> Result<(), Error>
Fill dest
entirely with random data. Read more
impl SeedableRng for XorShiftRng
[src]
impl SeedableRng for XorShiftRng
type Seed = [u8; 16]
Seed type, which is restricted to types mutably-dereferencable as u8
arrays (we recommend [u8; N]
for some N
). Read more
fn from_seed(seed: Self::Seed) -> Self
[src]
fn from_seed(seed: Self::Seed) -> Self
Create a new PRNG using the given seed. Read more
fn from_rng<R: RngCore>(rng: R) -> Result<Self, Error>
[src]
fn from_rng<R: RngCore>(rng: R) -> Result<Self, Error>
Create a new PRNG seeded from another Rng
. Read more
fn seed_from_u64(state: u64) -> Self
[src]
fn seed_from_u64(state: u64) -> Self
Create a new PRNG using a u64
seed. Read more
Auto Trait Implementations
impl Send for XorShiftRng
impl Send for XorShiftRng
impl Sync for XorShiftRng
impl Sync for XorShiftRng