pub struct Subscriber { /* private fields */ }Expand description
A subscriber handling subscription messages as Mutation and executing them into a SubscriptionManager
A subscriber has a set of enabled event type (see EventType). It only handles subscriptions
whose event type is enabled and drops all others.
A subscriber has a listener ID identifying its owner (usually a Notifier) as a listener of its manager
(usually also a Notifier).
Implementations§
Source§impl Subscriber
impl Subscriber
pub fn new( name: &'static str, enabled_events: EventSwitches, subscription_manager: DynSubscriptionManager, listener_id: ListenerId, ) -> Self
pub fn handles_event_type(&self, event_type: EventType) -> bool
pub fn start(self: &Arc<Self>)
pub fn mutate(self: &Arc<Self>, mutation: Mutation) -> Result<()>
pub async fn join(self: &Arc<Self>) -> Result<()>
pub fn close(&self)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Subscriber
impl !RefUnwindSafe for Subscriber
impl Send for Subscriber
impl Sync for Subscriber
impl !Unpin for Subscriber
impl !UnwindSafe for Subscriber
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<S> CastArc for Swhere
S: CastFromSync + ?Sized,
impl<S> CastArc for Swhere
S: CastFromSync + ?Sized,
Source§impl<T> CastFrom for Twhere
T: Any + 'static,
impl<T> CastFrom for Twhere
T: Any + 'static,
Source§fn ref_any(&self) -> &(dyn Any + 'static)
fn ref_any(&self) -> &(dyn Any + 'static)
Returns a immutable reference to
Any, which is backed by the type implementing this trait.Source§fn mut_any(&mut self) -> &mut (dyn Any + 'static)
fn mut_any(&mut self) -> &mut (dyn Any + 'static)
Returns a mutable reference to
Any, which is backed by the type implementing this trait.Source§impl<T> CastFromSync for T
impl<T> CastFromSync for T
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