Skip to main content

Decoder

Trait Decoder 

Source
pub trait Decoder {
    // Required method
    fn decode<T>(&self, data: Bytes) -> Result<T, DecodeError>
       where T: DeserializeOwned;

    // Provided methods
    fn decode_mut<T>(&mut self, data: Bytes) -> Result<T, DecodeError>
       where T: DeserializeOwned { ... }
    fn transformed<BT>(self, transformer: BT) -> TransformedDecoder<Self, BT>
       where Self: Sized,
             BT: BinaryTransform { ... }
}
Expand description

A decoder that can transform binary data into a serde-deserializable object.

Required Methods§

Source

fn decode<T>(&self, data: Bytes) -> Result<T, DecodeError>

Attempt to decode the given binary data.

Provided Methods§

Source

fn decode_mut<T>(&mut self, data: Bytes) -> Result<T, DecodeError>

Attempt to decode the given binary data, possibly mutating the state of the decoder.

Source

fn transformed<BT>(self, transformer: BT) -> TransformedDecoder<Self, BT>
where Self: Sized, BT: BinaryTransform,

Wraps this decoder, first applying transformer to any data before passing it to the decoder.

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§