rand_sequence/seed.rs
1use crate::builder::RandomSequenceBuilder;
2use crate::sequence::RandomSequence;
3
4macro_rules! seed_sequence {
5 ($type:ident) => {
6 impl RandomSequence<$type> {
7 /// Initialise a random sequence from the seeds.
8 ///
9 /// These seeds should be two uniformly random numbers across the u64 space.
10 pub fn new(seed_base: $type, seed_offset: $type) -> Self {
11 let config = RandomSequenceBuilder::<$type>::new(seed_base, seed_offset);
12 config.into_iter()
13 }
14 }
15 };
16}
17
18seed_sequence!(u8);
19seed_sequence!(u16);
20seed_sequence!(u32);
21seed_sequence!(u64);
22seed_sequence!(usize);