Queue

Trait Queue 

Source
pub trait Queue: Send {
    type Request: ReadRequest + ?Sized;
    type Output: Send + Sized;

    // Required methods
    fn push(&mut self, input: Result<&Self::Request, Error>);
    fn pop(&mut self) -> Option<Result<Self::Output, Error>>;
}
Expand description

Subscription queue.

Required Associated Types§

Required Methods§

Source

fn push(&mut self, input: Result<&Self::Request, Error>)

Called immediately on channel updates.

Source

fn pop(&mut self) -> Option<Result<Self::Output, Error>>

Called when user tries to extract data from Subscription stream.

Implementors§

Source§

impl<I, O, F> Queue for LastFn<I, O, F>
where I: ReadRequest + ?Sized, O: Send, F: FnMut(Result<&I, Error>) -> Option<Result<O, Error>> + Send,

Source§

impl<I, O, F> Queue for QueueFn<I, O, F>
where I: ReadRequest + ?Sized, O: Send, F: FnMut(Result<&I, Error>) -> Option<Result<O, Error>> + Send,