pub trait Aggregate: Send + Sync + Default {
type Identifier: Send + Sync;
// 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>> { ... }
}Required Associated Types§
type Identifier: Send + Sync
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 Methods§
fn collect_events(&mut self) -> VecDeque<Box<dyn Message>>
Object Safety§
This trait is not object safe.