comparison utils/src/prng.rs @ 784:1f152ca95658

Replace pytouhou.utils.random.Random with a Rust version libtouhou.Prng now supports having its seed generated randomly using the getrandom crate, and is now exposed to Python.
author Link Mauve <linkmauve@linkmauve.fr>
date Sun, 23 Nov 2025 12:48:03 +0100
parents 21b186be2590
children
comparison
equal deleted inserted replaced
783:ec1e06402a97 784:1f152ca95658
6 seed: u16, 6 seed: u16,
7 } 7 }
8 8
9 impl Prng { 9 impl Prng {
10 /// Create a new pseudo-random number generator from this seed. 10 /// Create a new pseudo-random number generator from this seed.
11 pub fn new(seed: u16) -> Prng { 11 pub fn new(seed: Option<u16>) -> Prng {
12 // TODO: Maybe add a getrandom::u16() to getrandom instead?
13 let seed = seed.unwrap_or_else(|| getrandom::u32().unwrap() as u16);
12 Prng { 14 Prng {
13 seed, 15 seed,
14 } 16 }
15 } 17 }
16 18