pub trait NestedDecodeInput {
    fn remaining_len(&self) -> usize;
fn read_into(&mut self, into: &mut [u8]) -> Result<(), DecodeError>;
fn read_into_or_exit<ExitCtx: Clone>(
        &mut self,
        into: &mut [u8],
        c: ExitCtx,
        exit: fn(_: ExitCtx, _: DecodeError) -> !
    ); fn is_depleted(&self) -> bool { ... }
fn read_specialized<T, C, F>(
        &mut self,
        _context: C,
        else_deser: F
    ) -> Result<T, DecodeError>
    where
        T: TryStaticCast,
        C: TryStaticCast,
        F: FnOnce(&mut Self) -> Result<T, DecodeError>
, { ... }
fn read_specialized_or_exit<T, C, ExitCtx, F>(
        &mut self,
        _context: C,
        c: ExitCtx,
        _exit: fn(_: ExitCtx, _: DecodeError) -> !,
        else_deser: F
    ) -> T
    where
        T: TryStaticCast,
        C: TryStaticCast,
        F: FnOnce(&mut Self, ExitCtx) -> T,
        ExitCtx: Clone
, { ... }
fn read_byte(&mut self) -> Result<u8, DecodeError> { ... }
fn read_byte_or_exit<ExitCtx: Clone>(
        &mut self,
        c: ExitCtx,
        exit: fn(_: ExitCtx, _: DecodeError) -> !
    ) -> u8 { ... } }
Expand description

Trait that allows deserializing objects from a buffer.

Required methods

The remaining length of the input data.

Read the exact number of bytes required to fill the given buffer.

Read the exact number of bytes required to fill the given buffer. Exit early if there are not enough bytes to fill the result.

Provided methods

True if all data from the buffer has already been used.

Read a single byte from the input.

Read a single byte from the input.

Implementations on Foreign Types

A nested decode buffer implementation on referenced data.

Implementors