pub trait Parent<T: EsEntity>: Send {
// Required methods
fn new_children_mut(&mut self) -> &mut Vec<<T as EsEntity>::New>;
fn iter_persisted_children_mut(
&mut self,
) -> ValuesMut<'_, <<T as EsEntity>::Event as EsEvent>::EntityId, T>;
fn inject_children(&mut self, entities: impl IntoIterator<Item = T>);
}Expand description
Trait that entities implement for every field marked #[es_entity(nested)]
Will be auto-implemented when #[derive(EsEntity)] is used.
Required Methods§
Sourcefn new_children_mut(&mut self) -> &mut Vec<<T as EsEntity>::New>
fn new_children_mut(&mut self) -> &mut Vec<<T as EsEntity>::New>
Access new child entities to persist them.
Sourcefn iter_persisted_children_mut(
&mut self,
) -> ValuesMut<'_, <<T as EsEntity>::Event as EsEvent>::EntityId, T>
fn iter_persisted_children_mut( &mut self, ) -> ValuesMut<'_, <<T as EsEntity>::Event as EsEvent>::EntityId, T>
Access existing children to update them incase they were mutated.
Sourcefn inject_children(&mut self, entities: impl IntoIterator<Item = T>)
fn inject_children(&mut self, entities: impl IntoIterator<Item = T>)
Inject hydrated children while loading the parent.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".