pub struct Hub<M, R> { /* private fields */ }
Expand description
A subscription hub.
Does the subscription and dispatch.
The exact subscription and routing behaviour is to be implemented by the Registry (of type R
).
The Hub under the hood uses the channel defined in crate::mpsc
module.
Implementations§
source§impl<M, R> Hub<M, R>where
R: Unsubscribe,
impl<M, R> Hub<M, R>where R: Unsubscribe,
sourcepub fn map_registry_for_tests<MapF, Ret>(&self, map: MapF) -> Retwhere
MapF: FnOnce(&R) -> Ret,
pub fn map_registry_for_tests<MapF, Ret>(&self, map: MapF) -> Retwhere MapF: FnOnce(&R) -> Ret,
Provide access to the registry (for test purposes).
source§impl<M, R> Hub<M, R>
impl<M, R> Hub<M, R>
sourcepub fn new(tracing_key: &'static str) -> Selfwhere
R: Default,
pub fn new(tracing_key: &'static str) -> Selfwhere R: Default,
Create a new instance of Hub (with default value for the Registry).
sourcepub fn new_with_registry(tracing_key: &'static str, registry: R) -> Self
pub fn new_with_registry(tracing_key: &'static str, registry: R) -> Self
Create a new instance of Hub over the initialized Registry.
Trait Implementations§
Auto Trait Implementations§
impl<M, R> !RefUnwindSafe for Hub<M, R>
impl<M, R> Send for Hub<M, R>where M: Send, R: Send,
impl<M, R> Sync for Hub<M, R>where M: Send, R: Send,
impl<M, R> Unpin for Hub<M, R>
impl<M, R> !UnwindSafe for Hub<M, R>
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