Skip to main content

EventSubscription

Struct EventSubscription 

Source
pub struct EventSubscription { /* private fields */ }
Expand description

Handle for receiving managed client events.

Each subscription has its own bounded queue configured by SubscriberConfig. The configured SubscriberOverflow policy applies when that queue is full. Dropping the handle unregisters the subscriber.

Implementations§

Source§

impl EventSubscription

Source

pub fn recv(&self) -> Result<ClientEvent, EventSubscriptionError>

Block until the next queued event is available.

If the subscription is disconnected, this returns EventSubscriptionError::Disconnected after any already queued events have been drained.

Source

pub fn try_recv(&self) -> Result<Option<ClientEvent>, EventSubscriptionError>

Try to receive one queued event without blocking.

Returns Ok(None) when the subscription is still connected but no event is queued. If the subscription is disconnected, this returns EventSubscriptionError::Disconnected after any already queued events have been drained.

Trait Implementations§

Source§

impl Debug for EventSubscription

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for EventSubscription

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.