Crates.io | prng_mt |
lib.rs | prng_mt |
version | 0.1.0 |
source | src |
created_at | 2021-11-08 21:29:05.081903 |
updated_at | 2021-11-08 21:29:05.081903 |
description | Implementation of the Mersenne Twister PRNG in Rust |
homepage | |
repository | https://github.com/lostinc0de/prng_mt |
max_upload_size | |
id | 478640 |
size | 5,720 |
Implementation of the Mersenne Twister PRNG in Rust
This is a simple implementation of the Mersenne-Twister pseudorandom number generator in Rust using the algorithm on Wikipedia. The macro mersenne_twister() is provided to create the structs MT19937 and MT19937_64 for the 32 bit and 64 bit versions respectively. Different MT PRNGs may be constructed with non-default parameters using this macro. The implementation has been tested against the C++ PRNG std::mt19937. To generate pseudorandom numbers instantiate the object with a seed using new() and call next():
use prng_mt::mt19937::MT19937;
let mut mt = MT19937::new(42);
println!("Rand: {}", mt.next());