Skip to main content

BufferReader

Trait BufferReader 

Source
pub trait BufferReader<'a> {
    // Required methods
    fn peek(&self) -> Option<u8>;
    fn next(&mut self) -> Option<u8>;
    fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), DecodeError>;
    fn remaining(&self) -> &'a [u8] ;
    fn advance(&mut self, n: usize) -> Result<(), DecodeError>;

    // Provided methods
    fn check_alloc(&mut self, _n: usize) -> Result<(), DecodeError> { ... }
    fn depth_enter(&mut self) -> Result<(), DecodeError> { ... }
    fn depth_exit(&mut self) { ... }
}

Required Methods§

Source

fn peek(&self) -> Option<u8>

Source

fn next(&mut self) -> Option<u8>

Source

fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), DecodeError>

Source

fn remaining(&self) -> &'a [u8]

Source

fn advance(&mut self, n: usize) -> Result<(), DecodeError>

Provided Methods§

Source

fn check_alloc(&mut self, _n: usize) -> Result<(), DecodeError>

Source

fn depth_enter(&mut self) -> Result<(), DecodeError>

Source

fn depth_exit(&mut self)

Implementors§

Source§

impl<'a> BufferReader<'a> for SliceReader<'a>

Source§

impl<'a, R: BufferReader<'a>> BufferReader<'a> for LimitedReader<'a, R>