use crate::agnostic::{ClumpMut, Entity, phantoms::PhantomDirectory};
pub trait EntityMut<C: ClumpMut, D>: Entity<C, D> {
fn take_clump_mut(&mut self) -> Option<&mut C>;
fn take_dir_mut(&mut self) -> Option<&mut D>;
}
impl<C: ClumpMut> EntityMut<C, PhantomDirectory> for C {
fn take_clump_mut(&mut self) -> Option<&mut C> {
Some(self)
}
fn take_dir_mut(&mut self) -> Option<&mut PhantomDirectory> {
None::<&mut PhantomDirectory>
}
}