warlocks_cauldron/providers/spec/
uk.rs

1use super::super::{Local, Datelike, dependencies::*};
2
3
4/// Methods collection provides special data for Ukraine (uk)
5pub struct UkraineSpecProvider;
6
7impl UkraineSpecProvider {
8    /// Generate random patronymic name
9    pub fn patronymic(gender: Option<Gender>) -> String {
10        let patronymics = crate::data::parsed::UK.builtin.get("patronymic").unwrap()
11            .as_object().unwrap();
12
13        let gender = validate_enum(gender, None);
14
15        get_random_element(patronymics.get(gender).expect("Cannot find a patronymic with the given gender!")
16            .as_array().unwrap().into_iter()
17                .map(|i| i.as_str())).unwrap()
18                    .to_string()
19    }
20}