pub struct Events { /* private fields */ }Expand description
The event bus. Cheap to clone: every clone is the same bus.
Implementations§
Source§impl Events
impl Events
Sourcepub fn builder(db: Db) -> EventsBuilder
pub fn builder(db: Db) -> EventsBuilder
Starts a bus, for listeners added by hand: a test, or an application assembled without the bootstrap.
Sourcepub async fn emit<E: Event>(&self, event: &E)
pub async fn emit<E: Event>(&self, event: &E)
Announces event to its listeners, in the order they were registered,
and returns once the last has run.
Emit once the fact is true: after the transaction that made it so has committed. A listener that fails is logged and does not stop the others, and nothing reaches the caller, since the fact stands either way.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Events
impl !UnwindSafe for Events
impl Freeze for Events
impl Send for Events
impl Sync for Events
impl Unpin for Events
impl UnsafeUnpin for Events
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more