Trait event_driven_core::message::Aggregate
source · pub trait Aggregate: Send + Sync + Default {
// Required methods
fn events(&self) -> &VecDeque<Box<dyn Message>>;
fn take_events(&mut self) -> VecDeque<Box<dyn Message>>;
fn raise_event(&mut self, event: Box<dyn Message>);
// Provided method
fn collect_events(&mut self) -> VecDeque<Box<dyn Message>> { ... }
}