Trait tetsy_scale_codec::Input[][src]

pub trait Input {
    fn remaining_len(&mut self) -> Result<Option<usize>, Error>;
fn read(&mut self, into: &mut [u8]) -> Result<(), Error>; fn read_byte(&mut self) -> Result<u8, Error> { ... } }

Trait that allows reading of data into a slice.

Required methods

fn remaining_len(&mut self) -> Result<Option<usize>, Error>[src]

Should return the remaining length of the input data. If no information about the input length is available, None should be returned.

The length is used to constrain the preallocation while decoding. Returning a garbage length can open the doors for a denial of service attack to your application. Otherwise, returning None can decrease the performance of your application.

fn read(&mut self, into: &mut [u8]) -> Result<(), Error>[src]

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

Note that this function is similar to std::io::Read::read_exact and not std::io::Read::read.

Loading content...

Provided methods

fn read_byte(&mut self) -> Result<u8, Error>[src]

Read a single byte from the input.

Loading content...

Implementations on Foreign Types

impl<'a> Input for &'a [u8][src]

Loading content...

Implementors

impl<R: Read + Seek> Input for IoReader<R>[src]

Loading content...