Decoder

Trait Decoder 

Source
pub trait Decoder {
    type Item;
    type Error: From<Error>;

    // Required method
    fn decode(
        &mut self,
        src: &mut BytesMut,
    ) -> Result<Option<Self::Item>, Self::Error>;

    // Provided method
    fn decode_eof(
        &mut self,
        buf: &mut BytesMut,
    ) -> Result<Option<Self::Item>, Self::Error> { ... }
}
Available on (crate features async_io or async_tokio) and crate feature async_framed only.

Required Associated Types§

Source

type Item

The type of decoded frames.

Source

type Error: From<Error>

The type of unrecoverable frame decoding errors.

Required Methods§

Source

fn decode( &mut self, src: &mut BytesMut, ) -> Result<Option<Self::Item>, Self::Error>

Provided Methods§

Source

fn decode_eof( &mut self, buf: &mut BytesMut, ) -> Result<Option<Self::Item>, Self::Error>

Implementations on Foreign Types§

Source§

impl<T: Decoder> Decoder for &mut T

Source§

type Item = <T as Decoder>::Item

Source§

type Error = <T as Decoder>::Error

Source§

fn decode( &mut self, src: &mut BytesMut, ) -> Result<Option<Self::Item>, Self::Error>

Implementors§