warlocks_cauldron/providers/
food.rs

1use super::dependencies::*;
2
3
4/// Struct for generating data related to food
5pub struct Food<'a>(pub &'a Locale);
6
7impl<'a> Food<'a> {
8    /// Private. Return global parsed data from own locale
9    fn data(&self) -> &ParsedData { self.0.get_data() }
10
11    /// Get a random spices or herbs
12    pub fn vegetable(&self) -> &str {
13        get_random_element(self.data().food.vegetables.iter())
14    }
15
16    /// Get a random fruit or berry
17    pub fn fruit(&self) -> &str {
18        get_random_element(self.data().food.fruits.iter())
19    }
20
21    /// Get a random dish
22    pub fn dish(&self) -> &str {
23        get_random_element(self.data().food.dishes.iter())
24    }
25
26    /// Get a random spices or herbs
27    pub fn spices(&self) -> &str {
28        get_random_element(self.data().food.spices.iter())
29    }
30    
31    /// Get a random drink
32    pub fn drink(&self) -> &str {
33        get_random_element(self.data().food.drinks.iter())
34    }
35}