Trait ConfigInterface
Source pub trait ConfigInterface:
Debug
+ Send
+ Sync {
Show 20 methods
// Required methods
fn species(&self) -> Arc<HashMap<i32, Arc<SpeciesData>>>;
fn locations(&self) -> Arc<HashMap<i32, Arc<LocationData>>>;
fn items(&self) -> Arc<HashMap<i32, Arc<ItemData>>>;
fn settings(&self) -> Arc<Settings>;
fn species_names(&self) -> Arc<HashMap<i32, String>>;
fn location_names(&self) -> Arc<HashMap<i32, String>>;
fn item_names(&self) -> Arc<HashMap<i32, String>>;
fn items_by_attributes(
&self,
) -> Arc<HashMap<ItemAttributesType, Arc<Vec<Arc<ItemData>>>>>;
fn items_by_properties(
&self,
) -> Arc<HashMap<ItemPropertiesType, Arc<Vec<Arc<ItemData>>>>>;
fn items_by_category(
&self,
) -> Arc<HashMap<ItemCategory, Arc<Vec<Arc<ItemData>>>>>;
fn item_ids_by_category(&self) -> Arc<HashMap<ItemCategory, Arc<Vec<i32>>>>;
// Provided methods
fn get_species_data(&self, species_id: i32) -> Option<Arc<SpeciesData>> { ... }
fn get_location_data(&self, location_id: i32) -> Option<Arc<LocationData>> { ... }
fn get_item_data(&self, item_id: i32) -> Option<Arc<ItemData>> { ... }
fn get_items_by_attributes_type(
&self,
attributes_type: ItemAttributesType,
) -> Option<Arc<Vec<Arc<ItemData>>>> { ... }
fn get_items_by_properties_type(
&self,
properties_type: ItemPropertiesType,
) -> Option<Arc<Vec<Arc<ItemData>>>> { ... }
fn get_items_by_category(
&self,
item_category: ItemCategory,
) -> Option<Arc<Vec<Arc<ItemData>>>> { ... }
fn get_item_ids_by_category(
&self,
item_category: ItemCategory,
) -> Option<Arc<Vec<i32>>> { ... }
fn is_item_in_category(
&self,
item_data: Arc<ItemData>,
category: ItemCategory,
) -> bool { ... }
fn is_item_id_in_category(
&self,
item_id: i32,
item_category: ItemCategory,
) -> bool { ... }
}