Encoder

Trait Encoder 

Source
pub trait Encoder {
    type EncodeItem;
    type EncodeError: Debug;

    // Required method
    fn encode(
        &self,
        item: Self::EncodeItem,
        dst: &mut BytesMut,
    ) -> Result<(), Self::EncodeError>;

    // Provided method
    fn encode_vec(
        &self,
        item: Self::EncodeItem,
        dst: &mut BytesVec,
    ) -> Result<(), Self::EncodeError> { ... }
}
Expand description

Trait of helper objects to write out messages as bytes.

Required Associated Types§

Source

type EncodeItem

The type of items consumed by the Encoder

Source

type EncodeError: Debug

The type of encoding errors.

Required Methods§

Source

fn encode( &self, item: Self::EncodeItem, dst: &mut BytesMut, ) -> Result<(), Self::EncodeError>

Encodes a frame into the buffer provided.

Provided Methods§

Source

fn encode_vec( &self, item: Self::EncodeItem, dst: &mut BytesVec, ) -> Result<(), Self::EncodeError>

Encodes a frame into the buffer provided.

Implementations on Foreign Types§

Source§

impl<T> Encoder for Rc<T>
where T: Encoder,

Source§

type EncodeItem = <T as Encoder>::EncodeItem

Source§

type EncodeError = <T as Encoder>::EncodeError

Source§

fn encode( &self, item: Self::EncodeItem, dst: &mut BytesMut, ) -> Result<(), Self::EncodeError>

Implementors§