Trait binreader::BinReader [−][src]
pub trait BinReader<'r> where
Self: Sized + AsRef<[u8]>, {}Show methods
fn from_slice(
slice: &'r [u8],
initial_offset: usize,
endidness: Endidness
) -> Result<Self>; fn size(&self) -> usize; fn initial_offset(&self) -> usize; fn current_offset(&self) -> usize; fn endidness(&self) -> Endidness; fn advance_to(&mut self, offset: usize) -> Result<()>; fn advance_by(&mut self, num_bytes: usize) -> Result<()>; fn next_u8(&mut self) -> Result<u8> { ... } fn next_n_bytes(&mut self, num_bytes: usize) -> Result<Bytes> { ... } fn lower_offset_limit(&self) -> usize { ... } fn upper_offset_limit(&self) -> usize { ... } fn is_empty(&self) -> bool { ... } fn remaining(&self) -> usize { ... } fn validate_offset(&self, offset: usize, size: usize) -> Result<()> { ... } fn relative_offset(&self, abs_offset: usize) -> Result<usize> { ... } fn next_bytes_are(&self, prefix: &[u8]) -> Result<bool> { ... } fn bytes_at(&self, offset: usize, buf: &mut [u8]) -> Result<()> { ... } fn subseq(&self, offset: usize, num_bytes: usize) -> Result<&[u8]> { ... } fn range(&self, start: usize, end: usize) -> Result<&[u8]> { ... } fn next_bytes(&mut self, buf: &mut [u8]) -> Result<()> { ... } fn current_byte(&self) -> Result<u8> { ... } fn u8_at(&self, offset: usize) -> Result<u8> { ... } fn i8_ne_at(&self, offset: usize) -> Result<i8> { ... } fn u16_be_at(&self, offset: usize) -> Result<u16> { ... } fn u16_le_at(&self, offset: usize) -> Result<u16> { ... } fn i16_be_at(&self, offset: usize) -> Result<i16> { ... } fn i16_le_at(&self, offset: usize) -> Result<i16> { ... } fn u32_be_at(&self, offset: usize) -> Result<u32> { ... } fn u32_le_at(&self, offset: usize) -> Result<u32> { ... } fn i32_be_at(&self, offset: usize) -> Result<i32> { ... } fn i32_le_at(&self, offset: usize) -> Result<i32> { ... } fn u64_be_at(&self, offset: usize) -> Result<u64> { ... } fn u64_le_at(&self, offset: usize) -> Result<u64> { ... } fn i64_be_at(&self, offset: usize) -> Result<i64> { ... } fn i64_le_at(&self, offset: usize) -> Result<i64> { ... } fn u128_be_at(&self, offset: usize) -> Result<u128> { ... } fn u128_le_at(&self, offset: usize) -> Result<u128> { ... } fn i128_be_at(&self, offset: usize) -> Result<i128> { ... } fn i128_le_at(&self, offset: usize) -> Result<i128> { ... } fn u16_at(&self, offset: usize) -> Result<u16> { ... } fn u32_at(&self, offset: usize) -> Result<u32> { ... } fn u64_at(&self, offset: usize) -> Result<u64> { ... } fn u128_at(&self, offset: usize) -> Result<u128> { ... } fn i16_at(&self, offset: usize) -> Result<i16> { ... } fn i32_at(&self, offset: usize) -> Result<i32> { ... } fn i64_at(&self, offset: usize) -> Result<i64> { ... } fn i128_at(&self, offset: usize) -> Result<i128> { ... } fn next_i8(&mut self) -> Result<i8> { ... } fn next_i8_ne(&mut self) -> Result<i8> { ... } fn next_u16_be(&mut self) -> Result<u16> { ... } fn next_u16_le(&mut self) -> Result<u16> { ... } fn next_i16_be(&mut self) -> Result<i16> { ... } fn next_i16_le(&mut self) -> Result<i16> { ... } fn next_u32_be(&mut self) -> Result<u32> { ... } fn next_u32_le(&mut self) -> Result<u32> { ... } fn next_i32_be(&mut self) -> Result<i32> { ... } fn next_i32_le(&mut self) -> Result<i32> { ... } fn next_u64_be(&mut self) -> Result<u64> { ... } fn next_u64_le(&mut self) -> Result<u64> { ... } fn next_i64_be(&mut self) -> Result<i64> { ... } fn next_i64_le(&mut self) -> Result<i64> { ... } fn next_u128_be(&mut self) -> Result<u128> { ... } fn next_u128_le(&mut self) -> Result<u128> { ... } fn next_i128_be(&mut self) -> Result<i128> { ... } fn next_i128_le(&mut self) -> Result<i128> { ... } fn next_u16(&mut self) -> Result<u16> { ... } fn next_u32(&mut self) -> Result<u32> { ... } fn next_u64(&mut self) -> Result<u64> { ... } fn next_u128(&mut self) -> Result<u128> { ... } fn next_i16(&mut self) -> Result<i16> { ... } fn next_i32(&mut self) -> Result<i32> { ... } fn next_i64(&mut self) -> Result<i64> { ... } fn next_i128(&mut self) -> Result<i128> { ... }
Required methods
fn initial_offset(&self) -> usize
[src]fn current_offset(&self) -> usize
[src]fn advance_to(&mut self, offset: usize) -> Result<()>
[src]fn advance_by(&mut self, num_bytes: usize) -> Result<()>
[src]Provided methods
fn next_n_bytes(&mut self, num_bytes: usize) -> Result<Bytes>
[src]fn lower_offset_limit(&self) -> usize
[src]fn upper_offset_limit(&self) -> usize
[src]fn relative_offset(&self, abs_offset: usize) -> Result<usize>
[src]Returns true
if the next bytes are the same as the ones provided.
fn current_byte(&self) -> Result<u8>
[src]fn u128_be_at(&self, offset: usize) -> Result<u128>
[src]fn u128_le_at(&self, offset: usize) -> Result<u128>
[src]fn i128_be_at(&self, offset: usize) -> Result<i128>
[src]fn i128_le_at(&self, offset: usize) -> Result<i128>
[src]fn next_i8_ne(&mut self) -> Result<i8>
[src]fn next_u16_be(&mut self) -> Result<u16>
[src]fn next_u16_le(&mut self) -> Result<u16>
[src]fn next_i16_be(&mut self) -> Result<i16>
[src]fn next_i16_le(&mut self) -> Result<i16>
[src]fn next_u32_be(&mut self) -> Result<u32>
[src]fn next_u32_le(&mut self) -> Result<u32>
[src]fn next_i32_be(&mut self) -> Result<i32>
[src]fn next_i32_le(&mut self) -> Result<i32>
[src]fn next_u64_be(&mut self) -> Result<u64>
[src]fn next_u64_le(&mut self) -> Result<u64>
[src]fn next_i64_be(&mut self) -> Result<i64>
[src]fn next_i64_le(&mut self) -> Result<i64>
[src]fn next_u128_be(&mut self) -> Result<u128>
[src]fn next_u128_le(&mut self) -> Result<u128>
[src]fn next_i128_be(&mut self) -> Result<i128>
[src]fn next_i128_le(&mut self) -> Result<i128>
[src]