pub trait MessageQueue<Message> {
type Error;
// Required methods
fn enqueue(
&mut self,
message: Message,
) -> impl Future<Output = Result<(), Self::Error>> + Send;
fn dequeue(
&mut self,
) -> impl Future<Output = Result<Option<Message>, Self::Error>> + Send;
fn size(
&mut self,
) -> impl Future<Output = Result<usize, Self::Error>> + Send;
}Expand description
Represents a message queue that can be pushed and consumed.
Required Associated Types§
Required Methods§
Sourcefn enqueue(
&mut self,
message: Message,
) -> impl Future<Output = Result<(), Self::Error>> + Send
fn enqueue( &mut self, message: Message, ) -> impl Future<Output = Result<(), Self::Error>> + Send
Enqueues a message to the queue.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.