Decode

Trait Decode 

Source
pub trait Decode<V>: Sized {
    // Required method
    fn decode<B: Buf>(buf: &mut B, version: V) -> Result<Self, DecodeError>;
}
Expand description

Read the from the buffer using the given version.

If DecodeError::Short is returned, the caller should try again with more data.

Required Methods§

Source

fn decode<B: Buf>(buf: &mut B, version: V) -> Result<Self, DecodeError>

Decode the value from the given buffer.

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.

Implementations on Foreign Types§

Source§

impl<V> Decode<V> for Cow<'_, str>

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for bool

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for i8

Source§

fn decode<R: Buf>(r: &mut R, _: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for u8

Source§

fn decode<R: Buf>(r: &mut R, _: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for u16

Source§

fn decode<R: Buf>(r: &mut R, _: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for u32

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for u64

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for usize

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Source§

impl<V> Decode<V> for String

Source§

fn decode<R: Buf>(r: &mut R, version: V) -> Result<Self, DecodeError>

Decode a string with a varint length prefix.

Source§

impl<V> Decode<V> for Vec<u8>

Source§

fn decode<B: Buf>(buf: &mut B, version: V) -> Result<Self, DecodeError>

Implementors§

Source§

impl<T: Message> Decode<Version> for T

Source§

impl<T: Message> Decode<Version> for T

Source§

impl<V> Decode<V> for FilterType

Source§

impl<V> Decode<V> for GroupOrder

Source§

impl<V> Decode<V> for TrackStatusCode

Source§

impl<V> Decode<V> for ControlType

Source§

impl<V> Decode<V> for DataType

Source§

impl<V> Decode<V> for FetchHeader

Source§

impl<V> Decode<V> for RequestId

Source§

impl<V> Decode<V> for Path<'_>

Source§

impl<V> Decode<V> for Bytes

Source§

impl<V> Decode<V> for VarInt

Source§

impl<V> Decode<V> for Version

Source§

impl<V: Clone> Decode<V> for GroupHeader

Source§

impl<V: Clone> Decode<V> for Location

Source§

impl<V: Clone> Decode<V> for moq_lite::ietf::Parameters

Source§

impl<V: Clone> Decode<V> for moq_lite::lite::Parameters

Source§

impl<V: Clone> Decode<V> for Versions

Source§

impl<V: Copy> Decode<V> for FetchType<'_>

Source§

impl<const SCALE: u64, V> Decode<V> for Timescale<SCALE>