pub struct EventBus { /* private fields */ }Expand description
A publish/subscribe event bus protected by parking_lot::RwLock.
Implementations§
Source§impl EventBus
impl EventBus
Sourcepub fn subscribe(
&self,
callback: impl Fn(&MenteEvent) + Send + Sync + 'static,
) -> SubscriberId
pub fn subscribe( &self, callback: impl Fn(&MenteEvent) + Send + Sync + 'static, ) -> SubscriberId
Register a subscriber callback. Returns a handle for unsubscription.
Sourcepub fn unsubscribe(&self, id: SubscriberId)
pub fn unsubscribe(&self, id: SubscriberId)
Remove a subscriber by handle.
Sourcepub fn publish(&self, event: MenteEvent)
pub fn publish(&self, event: MenteEvent)
Publish an event to all current subscribers.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for EventBus
impl !RefUnwindSafe for EventBus
impl Send for EventBus
impl Sync for EventBus
impl Unpin for EventBus
impl UnsafeUnpin for EventBus
impl !UnwindSafe for EventBus
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