Crate mersenne_twister [stability]
[-] [+]
[src]
Mersenne Twister
A pure rust port of the Mersenne Twister pseudorandom number generator.
THESE ALGORITHMS ARE NOT APPROPRIATE FOR CRYPTOGRAPHIC USE.
Usage
If your application does not require a specific Mersenne Twister flavor, you can use the default one for your target platform this way:
#![feature(rand)] extern crate mersenne_twister; use mersenne_twister::MersenneTwister; use std::rand::{Rng, SeedableRng}; fn main() { // Get a seed somehow. let seed: u64 = 0x123456789abcdef; // Create the default RNG. let mut rng: MersenneTwister = SeedableRng::from_seed(seed); // start grabbing randomness from rng... }
Or if you want to use the default (fixed) seeds:
use std::default::Default; let mut rng: MersenneTwister = Default::default();
Portability
Note that MT19937
and MT19937_64
are not identical
algorithms, despite their similar names. They produce different
output streams when given the same seed. You will need to pick a
specific flavor of the algorithm if portable reproducibility is
important to you.
Structs
MT19937 | The 32-bit flavor of the Mersenne Twister pseudorandom number generator. |
MT19937_64 | The 64-bit flavor of the Mersenne Twister pseudorandom number generator. |
Type Definitions
MersenneTwister | The most platform-appropriate Mersenne Twister flavor. |