websocket_base::ws::dataframe

Trait DataFrame

Source
pub trait DataFrame {
    // Required methods
    fn is_last(&self) -> bool;
    fn opcode(&self) -> u8;
    fn reserved(&self) -> &[bool; 3];
    fn size(&self) -> usize;
    fn write_payload(&self, socket: &mut dyn Write) -> WebSocketResult<()>;
    fn take_payload(self) -> Vec<u8>;

    // Provided methods
    fn frame_size(&self, masked: bool) -> usize { ... }
    fn write_to(
        &self,
        writer: &mut dyn Write,
        mask: bool,
    ) -> WebSocketResult<()> { ... }
}
Expand description

A generic DataFrame. Every dataframe should be able to provide these methods. (If the payload is not known in advance then rewrite the write_payload method)

Required Methods§

Source

fn is_last(&self) -> bool

Is this dataframe the final dataframe of the message?

Source

fn opcode(&self) -> u8

What type of data does this dataframe contain?

Source

fn reserved(&self) -> &[bool; 3]

Reserved bits of this dataframe

Source

fn size(&self) -> usize

How long (in bytes) is this dataframe’s payload

Source

fn write_payload(&self, socket: &mut dyn Write) -> WebSocketResult<()>

Write the payload to a writer

Source

fn take_payload(self) -> Vec<u8>

Takes the payload out into a vec

Provided Methods§

Source

fn frame_size(&self, masked: bool) -> usize

Get’s the size of the entire dataframe in bytes, i.e. header and payload.

Source

fn write_to(&self, writer: &mut dyn Write, mask: bool) -> WebSocketResult<()>

Writes a DataFrame to a Writer.

Implementors§