websocket_base::ws::receiver

Trait Receiver

Source
pub trait Receiver: Sized {
    type F: DataFrame;
    type M: Message;

    // Required methods
    fn recv_dataframe<R>(&mut self, reader: &mut R) -> WebSocketResult<Self::F>
       where R: Read;
    fn recv_message_dataframes<R>(
        &mut self,
        reader: &mut R,
    ) -> WebSocketResult<Vec<Self::F>>
       where R: Read;

    // Provided methods
    fn incoming_dataframes<'a, R>(
        &'a mut self,
        reader: &'a mut R,
    ) -> DataFrameIterator<'a, Self, R> 
       where R: Read { ... }
    fn recv_message<R>(&mut self, reader: &mut R) -> WebSocketResult<Self::M>
       where R: Read { ... }
    fn incoming_messages<'a, R>(
        &'a mut self,
        reader: &'a mut R,
    ) -> MessageIterator<'a, Self, R> 
       where R: Read { ... }
}
Expand description

A trait for receiving data frames and messages.

Required Associated Types§

Source

type F: DataFrame

The type of dataframe that incoming messages will be serialized to.

Source

type M: Message

The type of message that incoming messages will be serialized to.

Required Methods§

Source

fn recv_dataframe<R>(&mut self, reader: &mut R) -> WebSocketResult<Self::F>
where R: Read,

Reads a single data frame from this receiver.

Source

fn recv_message_dataframes<R>( &mut self, reader: &mut R, ) -> WebSocketResult<Vec<Self::F>>
where R: Read,

Returns the data frames that constitute one message.

Provided Methods§

Source

fn incoming_dataframes<'a, R>( &'a mut self, reader: &'a mut R, ) -> DataFrameIterator<'a, Self, R>
where R: Read,

Returns an iterator over incoming data frames.

Source

fn recv_message<R>(&mut self, reader: &mut R) -> WebSocketResult<Self::M>
where R: Read,

Reads a single message from this receiver.

Source

fn incoming_messages<'a, R>( &'a mut self, reader: &'a mut R, ) -> MessageIterator<'a, Self, R>
where R: Read,

Returns an iterator over incoming messages.

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.

Implementors§