pub struct EventListener<T = ()> { /* private fields */ }
Expand description
A guard waiting for a notification from an Event
.
There are two ways for a listener to wait for a notification:
- In an asynchronous manner using
.await
. - In a blocking manner by calling
EventListener::wait()
on it.
If a notified listener is dropped without receiving a notification, dropping will notify another active listener. Whether one additional listener will be notified depends on what kind of notification was delivered.
See the Listener
trait for the functionality exposed by this type.
This structure allocates the listener on the heap.
Trait Implementations§
source§impl<T> Debug for EventListener<T>
impl<T> Debug for EventListener<T>
source§impl<T> Future for EventListener<T>
impl<T> Future for EventListener<T>
source§impl<T> Listener<T> for EventListener<T>
impl<T> Listener<T> for EventListener<T>
source§fn wait_timeout(self, timeout: Duration) -> Option<T>
fn wait_timeout(self, timeout: Duration) -> Option<T>
Blocks until a notification is received or a timeout is reached. Read more
source§fn wait_deadline(self, deadline: Instant) -> Option<T>
fn wait_deadline(self, deadline: Instant) -> Option<T>
Blocks until a notification is received or a deadline is reached. Read more
source§fn discard(self) -> bool
fn discard(self) -> bool
Drops this listener and discards its notification (if any) without notifying another
active listener. Read more
source§fn listens_to(&self, event: &Event<T>) -> bool
fn listens_to(&self, event: &Event<T>) -> bool
source§fn same_event(&self, other: &EventListener<T>) -> bool
fn same_event(&self, other: &EventListener<T>) -> bool
impl<T> RefUnwindSafe for EventListener<T>
impl<T: Send> Send for EventListener<T>
impl<T: Send> Sync for EventListener<T>
impl<T> Unpin for EventListener<T>
impl<T> UnwindSafe for EventListener<T>
Auto Trait Implementations§
impl<T> Freeze for EventListener<T>
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<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
source§type IntoFuture = F
type IntoFuture = F
Which kind of future are we turning this into?
source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
Creates a future from a value. Read more