Skip to main content

fantasy_namegen/
namegen.rs

1use rand::{rngs::StdRng, SeedableRng};
2
3use crate::{first_name, last_name};
4
5pub struct Namegen {
6    rng: StdRng,
7}
8
9impl Namegen {
10    pub fn new(seed: u64) -> Self {
11        let rng = StdRng::seed_from_u64(seed);
12
13        Namegen { rng }
14    }
15
16    pub fn first_name(&mut self) -> String {
17        first_name(&mut self.rng)
18    }
19
20    pub fn last_name(&mut self) -> String {
21        last_name(&mut self.rng)
22    }
23}