pub trait Reader: Clone {
Show 37 methods
// Required methods
fn len(&self) -> u64;
fn uint64(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> u64;
fn uint64_be(&self, byte_offset: Option<u64>) -> u64;
fn uint64_le(&self, byte_offset: Option<u64>) -> u64;
fn int64(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> i64;
fn int64_be(&self, byte_offset: Option<u64>) -> i64;
fn int64_le(&self, byte_offset: Option<u64>) -> i64;
fn f64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f64;
fn f64_be(&self, byte_offset: Option<u64>) -> f64;
fn f64_le(&self, byte_offset: Option<u64>) -> f64;
fn uint32(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> u32;
fn uint32_be(&self, byte_offset: Option<u64>) -> u32;
fn uint32_le(&self, byte_offset: Option<u64>) -> u32;
fn int32(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> i32;
fn int32_be(&self, byte_offset: Option<u64>) -> i32;
fn int32_le(&self, byte_offset: Option<u64>) -> i32;
fn f32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32;
fn f32_be(&self, byte_offset: Option<u64>) -> f32;
fn f32_le(&self, byte_offset: Option<u64>) -> f32;
fn uint16(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> u16;
fn uint16_be(&self, byte_offset: Option<u64>) -> u16;
fn uint16_le(&self, byte_offset: Option<u64>) -> u16;
fn int16(
&self,
byte_offset: Option<u64>,
little_endian: Option<bool>,
) -> i16;
fn int16_be(&self, byte_offset: Option<u64>) -> i16;
fn int16_le(&self, byte_offset: Option<u64>) -> i16;
fn f16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32;
fn f16_be(&self, byte_offset: Option<u64>) -> f32;
fn f16_le(&self, byte_offset: Option<u64>) -> f32;
fn uint8(&self, byte_offset: Option<u64>) -> u8;
fn int8(&self, byte_offset: Option<u64>) -> i8;
fn tell(&self) -> u64;
fn seek(&self, pos: u64);
fn slice(&self, begin: Option<u64>, end: Option<u64>) -> Vec<u8> ⓘ;
fn seek_slice(&self, size: usize) -> Vec<u8> ⓘ;
fn parse_string(
&self,
byte_offset: Option<u64>,
byte_length: Option<u64>,
) -> String;
// Provided methods
fn is_empty(&self) -> bool { ... }
fn get_slice<'a>(
&'a self,
byte_offset: u64,
byte_length: Option<u64>,
) -> impl Future<Output = Vec<u8>> + 'a { ... }
}Expand description
Reader interface. Implemented to read data from either a buffer or a filesystem
Required Methods§
Sourcefn uint64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u64
fn uint64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u64
Get the unsigned 64 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn uint64_be(&self, byte_offset: Option<u64>) -> u64
fn uint64_be(&self, byte_offset: Option<u64>) -> u64
Get the big-endian unsigned 64 bit integer at the given byte offset
Sourcefn uint64_le(&self, byte_offset: Option<u64>) -> u64
fn uint64_le(&self, byte_offset: Option<u64>) -> u64
Get the little-endian unsigned 64 bit integer at the given byte offset
Sourcefn int64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i64
fn int64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i64
Get the signed 64 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn int64_be(&self, byte_offset: Option<u64>) -> i64
fn int64_be(&self, byte_offset: Option<u64>) -> i64
Get the big-endian signed 64 bit integer at the given byte offset
Sourcefn int64_le(&self, byte_offset: Option<u64>) -> i64
fn int64_le(&self, byte_offset: Option<u64>) -> i64
Get the little-endian signed 64 bit integer at the given byte offset
Sourcefn f64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f64
fn f64(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f64
Get the 64 bit floating point at the given byte offset and endian. Default to big-endian
Sourcefn f64_be(&self, byte_offset: Option<u64>) -> f64
fn f64_be(&self, byte_offset: Option<u64>) -> f64
Get the big-endian floating point 64 bit integer at the given byte offset
Sourcefn f64_le(&self, byte_offset: Option<u64>) -> f64
fn f64_le(&self, byte_offset: Option<u64>) -> f64
Get the little-endian floating point 64 bit integer at the given byte offset
Sourcefn uint32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u32
fn uint32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u32
Get the unsigned 32 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn uint32_be(&self, byte_offset: Option<u64>) -> u32
fn uint32_be(&self, byte_offset: Option<u64>) -> u32
Get the big-endian unsigned 32 bit integer at the given byte offset
Sourcefn uint32_le(&self, byte_offset: Option<u64>) -> u32
fn uint32_le(&self, byte_offset: Option<u64>) -> u32
Get the little-endian unsigned 32 bit integer at the given byte offset
Sourcefn int32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i32
fn int32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i32
Get the signed 32 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn int32_be(&self, byte_offset: Option<u64>) -> i32
fn int32_be(&self, byte_offset: Option<u64>) -> i32
Get the big-endian signed 32 bit integer at the given byte offset
Sourcefn int32_le(&self, byte_offset: Option<u64>) -> i32
fn int32_le(&self, byte_offset: Option<u64>) -> i32
Get the little-endian signed 32 bit integer at the given byte offset
Sourcefn f32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32
fn f32(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32
Get the 32 bit floating point at the given byte offset and endian. Default to big-endian
Sourcefn f32_be(&self, byte_offset: Option<u64>) -> f32
fn f32_be(&self, byte_offset: Option<u64>) -> f32
Get the big-endian floating point 32 bit integer at the given byte offset
Sourcefn f32_le(&self, byte_offset: Option<u64>) -> f32
fn f32_le(&self, byte_offset: Option<u64>) -> f32
Get the little-endian floating point 32 bit integer at the given byte offset
Sourcefn uint16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u16
fn uint16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> u16
Get the unsigned 16 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn uint16_be(&self, byte_offset: Option<u64>) -> u16
fn uint16_be(&self, byte_offset: Option<u64>) -> u16
Get the big-endian unsigned 16 bit integer at the given byte offset
Sourcefn uint16_le(&self, byte_offset: Option<u64>) -> u16
fn uint16_le(&self, byte_offset: Option<u64>) -> u16
Get the little-endian unsigned 16 bit integer at the given byte offset
Sourcefn int16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i16
fn int16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> i16
Get the signed 16 bit integer at the given byte offset and endian. Default to big-endian
Sourcefn int16_be(&self, byte_offset: Option<u64>) -> i16
fn int16_be(&self, byte_offset: Option<u64>) -> i16
Get the big-endian signed 16 bit integer at the given byte offset
Sourcefn int16_le(&self, byte_offset: Option<u64>) -> i16
fn int16_le(&self, byte_offset: Option<u64>) -> i16
Get the little-endian signed 16 bit integer at the given byte offset
Sourcefn f16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32
fn f16(&self, byte_offset: Option<u64>, little_endian: Option<bool>) -> f32
Get the 16 bit floating point at the given byte offset and endian. Default to big-endian
Sourcefn f16_be(&self, byte_offset: Option<u64>) -> f32
fn f16_be(&self, byte_offset: Option<u64>) -> f32
Get the big-endian floating point 16 bit integer at the given byte offset
Sourcefn f16_le(&self, byte_offset: Option<u64>) -> f32
fn f16_le(&self, byte_offset: Option<u64>) -> f32
Get the little-endian floating point 16 bit integer at the given byte offset
Sourcefn uint8(&self, byte_offset: Option<u64>) -> u8
fn uint8(&self, byte_offset: Option<u64>) -> u8
Get the unsigned 8 bit integer at the given byte offset
Sourcefn int8(&self, byte_offset: Option<u64>) -> i8
fn int8(&self, byte_offset: Option<u64>) -> i8
Get the signed 8 bit integer at the given byte offset
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementors§
impl Reader for BufferReader
impl Reader for FetchReader
std or WebAssembly or crate feature wasm only.impl Reader for FileReader
std only.impl Reader for MMapReader
std only.