pub struct DirectMessageReceiver { /* private fields */ }Expand description
Receiver for direct messages.
This is a wrapper around a broadcast receiver that provides a cleaner API. Multiple receivers can be created to process messages in parallel.
Implementations§
Source§impl DirectMessageReceiver
impl DirectMessageReceiver
Sourcepub async fn recv(&mut self) -> Option<DirectMessage>
pub async fn recv(&mut self) -> Option<DirectMessage>
Receive the next direct message.
Returns None if the channel is closed.
Sourcepub fn try_recv(&mut self) -> Option<DirectMessage>
pub fn try_recv(&mut self) -> Option<DirectMessage>
Try to receive a message without blocking.
Returns None if no message is available or channel is closed.
Trait Implementations§
Source§impl Clone for DirectMessageReceiver
impl Clone for DirectMessageReceiver
Auto Trait Implementations§
impl Freeze for DirectMessageReceiver
impl !RefUnwindSafe for DirectMessageReceiver
impl Send for DirectMessageReceiver
impl Sync for DirectMessageReceiver
impl Unpin for DirectMessageReceiver
impl UnsafeUnpin for DirectMessageReceiver
impl !UnwindSafe for DirectMessageReceiver
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<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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