GenericReader

Struct GenericReader 

Source
pub struct GenericReader<'a>(/* private fields */);
Expand description

A wrapper around a type-erased trait object that implements Read and Seek.

Trait Implementations§

Source§

impl BufRead for GenericReader<'_>

Source§

fn fill_buf(&mut self) -> Result<&[u8]>

Returns the contents of the internal buffer, filling it with more data, via Read methods, if empty. Read more
Source§

fn consume(&mut self, amt: usize)

Marks the given amount of additional bytes from the internal buffer as having been read. Subsequent calls to read only return bytes that have not been marked as read. Read more
Source§

fn read_until(&mut self, byte: u8, buf: &mut Vec<u8>) -> Result<usize>

Reads all bytes into buf until the delimiter byte or EOF is reached. Read more
Source§

fn read_line(&mut self, buf: &mut String) -> Result<usize>

Reads all bytes until a newline (the 0xA byte) is reached, and append them to the provided String buffer. Read more
Source§

fn has_data_left(&mut self) -> Result<bool, Error>

🔬This is a nightly-only experimental API. (buf_read_has_data_left)
Checks if there is any data left to be read. Read more
1.83.0 · Source§

fn skip_until(&mut self, byte: u8) -> Result<usize, Error>

Skips all bytes until the delimiter byte or EOF is reached. Read more
1.0.0 · Source§

fn split(self, byte: u8) -> Split<Self>
where Self: Sized,

Returns an iterator over the contents of this reader split on the byte byte. Read more
1.0.0 · Source§

fn lines(self) -> Lines<Self>
where Self: Sized,

Returns an iterator over the lines of this reader. Read more
Source§

impl Read for GenericReader<'_>

Source§

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

Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
Source§

fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize>

Like read, except that it reads into a slice of buffers. Read more
Source§

fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>

Reads all bytes until EOF in this source, placing them into buf. Read more
Source§

fn read_to_string(&mut self, buf: &mut String) -> Result<usize>

Reads all bytes until EOF in this source, appending them to buf. Read more
Source§

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

Reads the exact number of bytes required to fill buf. Read more
Source§

fn is_read_vectored(&self) -> bool

🔬This is a nightly-only experimental API. (can_vector)
Determines if this Reader has an efficient read_vectored implementation. Read more
Source§

fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>

🔬This is a nightly-only experimental API. (read_buf)
Pull some bytes from this source into the specified buffer. Read more
Source§

fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>

🔬This is a nightly-only experimental API. (read_buf)
Reads the exact number of bytes required to fill cursor. Read more
1.0.0 · Source§

fn by_ref(&mut self) -> &mut Self
where Self: Sized,

Creates a “by reference” adaptor for this instance of Read. Read more
1.0.0 · Source§

fn bytes(self) -> Bytes<Self>
where Self: Sized,

Transforms this Read instance to an Iterator over its bytes. Read more
1.0.0 · Source§

fn chain<R>(self, next: R) -> Chain<Self, R>
where R: Read, Self: Sized,

Creates an adapter which will chain this stream with another. Read more
1.0.0 · Source§

fn take(self, limit: u64) -> Take<Self>
where Self: Sized,

Creates an adapter which will read at most limit bytes from it. Read more
Source§

impl Seek for GenericReader<'_>

Source§

fn seek(&mut self, pos: SeekFrom) -> Result<u64>

Seek to an offset, in bytes, in a stream. Read more
Source§

fn rewind(&mut self) -> Result<()>

Rewind to the beginning of a stream. Read more
Source§

fn stream_position(&mut self) -> Result<u64>

Returns the current seek position from the start of the stream. Read more
Source§

fn stream_len(&mut self) -> Result<u64, Error>

🔬This is a nightly-only experimental API. (seek_stream_len)
Returns the length of this stream (in bytes). Read more
1.80.0 · Source§

fn seek_relative(&mut self, offset: i64) -> Result<(), Error>

Seeks relative to the current position. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for GenericReader<'a>

§

impl<'a> !RefUnwindSafe for GenericReader<'a>

§

impl<'a> !Send for GenericReader<'a>

§

impl<'a> !Sync for GenericReader<'a>

§

impl<'a> Unpin for GenericReader<'a>

§

impl<'a> !UnwindSafe for GenericReader<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<R> ReadBytesExt for R
where R: Read + ?Sized,

Source§

fn read_u8(&mut self) -> Result<u8, Error>

Reads an unsigned 8 bit integer from the underlying reader. Read more
Source§

fn read_i8(&mut self) -> Result<i8, Error>

Reads a signed 8 bit integer from the underlying reader. Read more
Source§

fn read_u16<T>(&mut self) -> Result<u16, Error>
where T: ByteOrder,

Reads an unsigned 16 bit integer from the underlying reader. Read more
Source§

fn read_i16<T>(&mut self) -> Result<i16, Error>
where T: ByteOrder,

Reads a signed 16 bit integer from the underlying reader. Read more
Source§

fn read_u24<T>(&mut self) -> Result<u32, Error>
where T: ByteOrder,

Reads an unsigned 24 bit integer from the underlying reader. Read more
Source§

fn read_i24<T>(&mut self) -> Result<i32, Error>
where T: ByteOrder,

Reads a signed 24 bit integer from the underlying reader. Read more
Source§

fn read_u32<T>(&mut self) -> Result<u32, Error>
where T: ByteOrder,

Reads an unsigned 32 bit integer from the underlying reader. Read more
Source§

fn read_i32<T>(&mut self) -> Result<i32, Error>
where T: ByteOrder,

Reads a signed 32 bit integer from the underlying reader. Read more
Source§

fn read_u48<T>(&mut self) -> Result<u64, Error>
where T: ByteOrder,

Reads an unsigned 48 bit integer from the underlying reader. Read more
Source§

fn read_i48<T>(&mut self) -> Result<i64, Error>
where T: ByteOrder,

Reads a signed 48 bit integer from the underlying reader. Read more
Source§

fn read_u64<T>(&mut self) -> Result<u64, Error>
where T: ByteOrder,

Reads an unsigned 64 bit integer from the underlying reader. Read more
Source§

fn read_i64<T>(&mut self) -> Result<i64, Error>
where T: ByteOrder,

Reads a signed 64 bit integer from the underlying reader. Read more
Source§

fn read_u128<T>(&mut self) -> Result<u128, Error>
where T: ByteOrder,

Reads an unsigned 128 bit integer from the underlying reader. Read more
Source§

fn read_i128<T>(&mut self) -> Result<i128, Error>
where T: ByteOrder,

Reads a signed 128 bit integer from the underlying reader. Read more
Source§

fn read_uint<T>(&mut self, nbytes: usize) -> Result<u64, Error>
where T: ByteOrder,

Reads an unsigned n-bytes integer from the underlying reader. Read more
Source§

fn read_int<T>(&mut self, nbytes: usize) -> Result<i64, Error>
where T: ByteOrder,

Reads a signed n-bytes integer from the underlying reader. Read more
Source§

fn read_uint128<T>(&mut self, nbytes: usize) -> Result<u128, Error>
where T: ByteOrder,

Reads an unsigned n-bytes integer from the underlying reader.
Source§

fn read_int128<T>(&mut self, nbytes: usize) -> Result<i128, Error>
where T: ByteOrder,

Reads a signed n-bytes integer from the underlying reader.
Source§

fn read_f32<T>(&mut self) -> Result<f32, Error>
where T: ByteOrder,

Reads a IEEE754 single-precision (4 bytes) floating point number from the underlying reader. Read more
Source§

fn read_f64<T>(&mut self) -> Result<f64, Error>
where T: ByteOrder,

Reads a IEEE754 double-precision (8 bytes) floating point number from the underlying reader. Read more
Source§

impl<R> ReadEndian<[f32]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [f32], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [f32]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[f64]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [f64], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [f64]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[i128]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [i128], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [i128]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[i16]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [i16], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [i16]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[i32]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [i32], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [i32]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[i64]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [i64], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [i64]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[i8]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [i8], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [i8]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[u128]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [u128], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [u128]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[u16]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [u16], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [u16]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[u32]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [u32], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [u32]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[u64]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [u64], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [u64]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<[u8]> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut [u8], ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut [u8]) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<f32> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut f32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut f32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<f64> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut f64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut f64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<i128> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut i128, ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut i128) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<i16> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut i16) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut i16) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<i32> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut i32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut i32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<i64> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut i64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut i64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<i8> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut i8) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut i8) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<u128> for R
where R: Read,

Source§

fn read_from_little_endian_into( &mut self, value: &mut u128, ) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut u128) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<u16> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut u16) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut u16) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<u32> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut u32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut u32) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<u64> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut u64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut u64) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<R> ReadEndian<u8> for R
where R: Read,

Source§

fn read_from_little_endian_into(&mut self, value: &mut u8) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_big_endian_into(&mut self, value: &mut u8) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_native_endian_into(&mut self, value: &mut T) -> Result<(), Error>

Read into the supplied reference. Acts the same as std::io::Read::read_exact.
Source§

fn read_from_little_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_big_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

fn read_from_native_endian(&mut self) -> Result<T, Error>
where T: Default,

Read the byte value of the inferred type
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ZByteReaderTrait for T
where T: BufRead + Seek,

Source§

fn read_byte_no_error(&mut self) -> u8

Read a single byte from the decoder and return 0 if we can’t read the byte, e.g because of EOF Read more
Source§

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

Read exact bytes required to fill buf or return an error if that isn’t possible Read more
Source§

fn read_const_bytes<const N: usize>( &mut self, buf: &mut [u8; N], ) -> Result<(), ZByteIoError>

Read exact bytes required to fill buf or return an error if that isn’t possible Read more
Source§

fn read_const_bytes_no_error<const N: usize>(&mut self, buf: &mut [u8; N])

Read exact bytes required to fill buf or ignore buf entirely if you can’t fill it due to an error like the inability to fill the buffer completely Read more
Source§

fn read_bytes(&mut self, buf: &mut [u8]) -> Result<usize, ZByteIoError>

Read bytes into buf returning how many bytes you have read or an error if one occurred Read more
Source§

fn peek_bytes(&mut self, buf: &mut [u8]) -> Result<usize, ZByteIoError>

Reads data into provided buffer but does not advance read position.
Source§

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

Source§

fn z_seek(&mut self, from: ZSeekFrom) -> Result<u64, ZByteIoError>

Seek into a new position from the buffer Read more
Source§

fn is_eof(&mut self) -> Result<bool, ZByteIoError>

Report whether we are at the end of a stream. Read more
Source§

fn z_position(&mut self) -> Result<u64, ZByteIoError>

Return the current position of the inner cursor. Read more
Source§

fn read_remaining(&mut self, sink: &mut Vec<u8>) -> Result<usize, ZByteIoError>

Read all bytes remaining in this input to sink until we hit eof Read more