pub struct BseReader<T: Read + Seek, F: Fn(&[u8], usize, &str) -> Option<&'static ScriptType>> {
reader: T,
header: [u8; 64],
detect: F,
pos: u64,
filename: String,
}
Available on crate features
bgi
and bgi-arc
only.Fields§
§reader: T
§header: [u8; 64]
§detect: F
§pos: u64
§filename: String
Implementations§
Trait Implementations§
Source§impl<T: Read + Seek, F: Fn(&[u8], usize, &str) -> Option<&'static ScriptType>> ArchiveContent for BseReader<T, F>
impl<T: Read + Seek, F: Fn(&[u8], usize, &str) -> Option<&'static ScriptType>> ArchiveContent for BseReader<T, F>
Source§fn script_type(&self) -> Option<&ScriptType>
fn script_type(&self) -> Option<&ScriptType>
Returns the script type if the file is a script.
Source§impl<T: Read + Seek, F: Fn(&[u8], usize, &str) -> Option<&'static ScriptType>> Read for BseReader<T, F>
impl<T: Read + Seek, F: Fn(&[u8], usize, &str) -> Option<&'static ScriptType>> Read for BseReader<T, F>
Source§fn read(&mut self, buf: &mut [u8]) -> Result<usize>
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
1.36.0 · Source§fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
Like
read
, except that it reads into a slice of buffers. Read moreSource§fn is_read_vectored(&self) -> bool
fn is_read_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)1.0.0 · Source§fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>
Reads all bytes until EOF in this source, placing them into
buf
. Read more1.0.0 · Source§fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
Reads all bytes until EOF in this source, appending them to
buf
. Read more1.6.0 · Source§fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
Reads the exact number of bytes required to fill
buf
. Read moreSource§fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>
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>
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 more1.0.0 · Source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Creates a “by reference” adaptor for this instance of
Read
. Read moreAuto Trait Implementations§
impl<T, F> Freeze for BseReader<T, F>
impl<T, F> RefUnwindSafe for BseReader<T, F>where
T: RefUnwindSafe,
F: RefUnwindSafe,
impl<T, F> Send for BseReader<T, F>
impl<T, F> Sync for BseReader<T, F>
impl<T, F> Unpin for BseReader<T, F>
impl<T, F> UnwindSafe for BseReader<T, F>where
T: UnwindSafe,
F: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<R> ReadBytesExt for R
impl<R> ReadBytesExt for R
Source§fn read_u8(&mut self) -> Result<u8, Error>
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>
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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,
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§fn read_u16_into<T>(&mut self, dst: &mut [u16]) -> Result<(), Error>where
T: ByteOrder,
fn read_u16_into<T>(&mut self, dst: &mut [u16]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of unsigned 16 bit integers from the underlying
reader. Read more
Source§fn read_u32_into<T>(&mut self, dst: &mut [u32]) -> Result<(), Error>where
T: ByteOrder,
fn read_u32_into<T>(&mut self, dst: &mut [u32]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of unsigned 32 bit integers from the underlying
reader. Read more
Source§fn read_u64_into<T>(&mut self, dst: &mut [u64]) -> Result<(), Error>where
T: ByteOrder,
fn read_u64_into<T>(&mut self, dst: &mut [u64]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of unsigned 64 bit integers from the underlying
reader. Read more
Source§fn read_u128_into<T>(&mut self, dst: &mut [u128]) -> Result<(), Error>where
T: ByteOrder,
fn read_u128_into<T>(&mut self, dst: &mut [u128]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of unsigned 128 bit integers from the underlying
reader. Read more
Source§fn read_i8_into(&mut self, dst: &mut [i8]) -> Result<(), Error>
fn read_i8_into(&mut self, dst: &mut [i8]) -> Result<(), Error>
Reads a sequence of signed 8 bit integers from the underlying reader. Read more
Source§fn read_i16_into<T>(&mut self, dst: &mut [i16]) -> Result<(), Error>where
T: ByteOrder,
fn read_i16_into<T>(&mut self, dst: &mut [i16]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of signed 16 bit integers from the underlying
reader. Read more
Source§fn read_i32_into<T>(&mut self, dst: &mut [i32]) -> Result<(), Error>where
T: ByteOrder,
fn read_i32_into<T>(&mut self, dst: &mut [i32]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of signed 32 bit integers from the underlying
reader. Read more
Source§fn read_i64_into<T>(&mut self, dst: &mut [i64]) -> Result<(), Error>where
T: ByteOrder,
fn read_i64_into<T>(&mut self, dst: &mut [i64]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of signed 64 bit integers from the underlying
reader. Read more
Source§fn read_i128_into<T>(&mut self, dst: &mut [i128]) -> Result<(), Error>where
T: ByteOrder,
fn read_i128_into<T>(&mut self, dst: &mut [i128]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of signed 128 bit integers from the underlying
reader. Read more
Source§fn read_f32_into<T>(&mut self, dst: &mut [f32]) -> Result<(), Error>where
T: ByteOrder,
fn read_f32_into<T>(&mut self, dst: &mut [f32]) -> Result<(), Error>where
T: ByteOrder,
Reads a sequence of IEEE754 single-precision (4 bytes) floating
point numbers from the underlying reader. Read more
Source§fn read_f32_into_unchecked<T>(&mut self, dst: &mut [f32]) -> Result<(), Error>where
T: ByteOrder,
fn read_f32_into_unchecked<T>(&mut self, dst: &mut [f32]) -> Result<(), Error>where
T: ByteOrder,
👎Deprecated since 1.2.0: please use
read_f32_into
insteadDEPRECATED. Read more
Source§impl<T> ReadExt for Twhere
T: Read,
impl<T> ReadExt for Twhere
T: Read,
Source§fn read_u16(&mut self) -> Result<u16, Error>
fn read_u16(&mut self) -> Result<u16, Error>
Reads a u16 from the reader in little-endian order.
Source§fn read_u16_be(&mut self) -> Result<u16, Error>
fn read_u16_be(&mut self) -> Result<u16, Error>
Reads a u16 from the reader in big-endian order.
Source§fn read_u32(&mut self) -> Result<u32, Error>
fn read_u32(&mut self) -> Result<u32, Error>
Reads a u32 from the reader in little-endian order.
Source§fn read_u32_be(&mut self) -> Result<u32, Error>
fn read_u32_be(&mut self) -> Result<u32, Error>
Reads a u32 from the reader in big-endian order.
Source§fn read_u64(&mut self) -> Result<u64, Error>
fn read_u64(&mut self) -> Result<u64, Error>
Reads a u64 from the reader in little-endian order.
Source§fn read_u64_be(&mut self) -> Result<u64, Error>
fn read_u64_be(&mut self) -> Result<u64, Error>
Reads a u64 from the reader in big-endian order.
Source§fn read_u128(&mut self) -> Result<u128, Error>
fn read_u128(&mut self) -> Result<u128, Error>
Reads a u128 from the reader in little-endian order.
Source§fn read_u128_be(&mut self) -> Result<u128, Error>
fn read_u128_be(&mut self) -> Result<u128, Error>
Reads a u128 from the reader in big-endian order.
Source§fn read_i16(&mut self) -> Result<i16, Error>
fn read_i16(&mut self) -> Result<i16, Error>
Reads an i16 from the reader in little-endian order.
Source§fn read_i16_be(&mut self) -> Result<i16, Error>
fn read_i16_be(&mut self) -> Result<i16, Error>
Reads an i16 from the reader in big-endian order.
Source§fn read_i32(&mut self) -> Result<i32, Error>
fn read_i32(&mut self) -> Result<i32, Error>
Reads an i32 from the reader in little-endian order.
Source§fn read_i32_be(&mut self) -> Result<i32, Error>
fn read_i32_be(&mut self) -> Result<i32, Error>
Reads an i32 from the reader in big-endian order.
Source§fn read_i64(&mut self) -> Result<i64, Error>
fn read_i64(&mut self) -> Result<i64, Error>
Reads an i64 from the reader in little-endian order.
Source§fn read_i64_be(&mut self) -> Result<i64, Error>
fn read_i64_be(&mut self) -> Result<i64, Error>
Reads an i64 from the reader in big-endian order.
Source§fn read_i128(&mut self) -> Result<i128, Error>
fn read_i128(&mut self) -> Result<i128, Error>
Reads an i128 from the reader in little-endian order.
Source§fn read_i128_be(&mut self) -> Result<i128, Error>
fn read_i128_be(&mut self) -> Result<i128, Error>
Reads an i128 from the reader in big-endian order.
Source§fn read_f32(&mut self) -> Result<f32, Error>
fn read_f32(&mut self) -> Result<f32, Error>
Reads a f32 from the reader in little-endian order.
Source§fn read_f32_be(&mut self) -> Result<f32, Error>
fn read_f32_be(&mut self) -> Result<f32, Error>
Reads a f32 from the reader in big-endian order.
Source§fn read_f64(&mut self) -> Result<f64, Error>
fn read_f64(&mut self) -> Result<f64, Error>
Reads a f64 from the reader in little-endian order.
Source§fn read_f64_be(&mut self) -> Result<f64, Error>
fn read_f64_be(&mut self) -> Result<f64, Error>
Reads a f64 from the reader in big-endian order.
Source§fn read_cstring(&mut self) -> Result<CString, Error>
fn read_cstring(&mut self) -> Result<CString, Error>
Reads a C-style string (null-terminated) from the reader.
Source§fn read_fstring(
&mut self,
len: usize,
encoding: Encoding,
trim: bool,
) -> Result<String, Error>
fn read_fstring( &mut self, len: usize, encoding: Encoding, trim: bool, ) -> Result<String, Error>
Reads a C-style string (null-terminated) from the reader with maximum length. Read more