use hashbrown::HashMap;
use crate::world::Entity;
#[derive(Debug, Clone)]
pub struct Storage {
pub entities: HashMap<i32, Entity>,
}
impl Storage {
pub fn null() -> Self {
Self { entities: HashMap::new() }
}
pub fn add_entity(&mut self, id: i32, entity: Entity) {
self.entities.insert(id, entity);
}
pub fn get_entity(&self, id: &i32) -> Option<&Entity> {
self.entities.get(id)
}
pub fn get_entity_mut(&mut self, id: &i32) -> Option<&mut Entity> {
self.entities.get_mut(id)
}
pub fn remove_entity(&mut self, id: &i32) {
self.entities.remove(id);
}
pub fn clear(&mut self) {
self.entities.clear();
}
}