Trait Decode

Source
pub trait Decode: Sized {
    // Required method
    fn decode<B: Buf>(buf: &mut B) -> Result<Self>;

    // Provided method
    fn decode_exact<B: Buf>(buf: &mut B, size: usize) -> Result<Self> { ... }
}
Expand description

Decode a type from a buffer.

Required Methods§

Source

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Decode the type from the buffer.

Provided Methods§

Source

fn decode_exact<B: Buf>(buf: &mut B, size: usize) -> Result<Self>

Helper: Decode exactly size bytes from the 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 Decode for i8

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for i16

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for i32

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for i64

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for u8

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for u16

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for u32

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for u64

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl Decode for String

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl<T: Decode> Decode for Vec<T>

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Source§

impl<const N: usize> Decode for [u8; N]

Source§

fn decode<B: Buf>(buf: &mut B) -> Result<Self>

Implementors§