pub struct PackageFileReader<R: Read + Seek> { /* private fields */ }Expand description
A handle for reading a file in a package.
Implementations§
Source§impl<R: Read + Seek> PackageFileReader<R>
impl<R: Read + Seek> PackageFileReader<R>
Sourcepub fn try_clone_with<NewR: Read + Seek>(
&mut self,
reader: NewR,
) -> Result<PackageFileReader<NewR>>
pub fn try_clone_with<NewR: Read + Seek>( &mut self, reader: NewR, ) -> Result<PackageFileReader<NewR>>
A fast copy of this package file reader. The caller must ensure that the new reader points to the same blob of data as the current one and has exact same seek boundaries. If not, this will result in incorrect yet safe data read.
This function immediately tries to seek to the same position, so it may error out if seek fails.
This method takes self as mutable reference because it needs to read the current seek position and it requires mutability.
Trait Implementations§
Source§impl<R: Read + Seek> Read for PackageFileReader<R>
impl<R: Read + Seek> Read for PackageFileReader<R>
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
Source§fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
Reads the exact number of bytes required to fill
buf. Read more1.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 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” adapter for this instance of
Read. Read moreSource§impl<R: Read + Seek> Seek for PackageFileReader<R>
impl<R: Read + Seek> Seek for PackageFileReader<R>
Source§fn seek(&mut self, pos: SeekFrom) -> Result<u64>
fn seek(&mut self, pos: SeekFrom) -> Result<u64>
Seek to an offset, in bytes, in a stream. Read more
Source§fn stream_position(&mut self) -> Result<u64>
fn stream_position(&mut self) -> Result<u64>
Returns the current seek position from the start of the stream. Read more
1.55.0 · Source§fn rewind(&mut self) -> Result<(), Error>
fn rewind(&mut self) -> Result<(), Error>
Rewind to the beginning of a stream. Read more
Auto Trait Implementations§
impl<R> Freeze for PackageFileReader<R>where
R: Freeze,
impl<R> RefUnwindSafe for PackageFileReader<R>where
R: RefUnwindSafe,
impl<R> Send for PackageFileReader<R>where
R: Send,
impl<R> Sync for PackageFileReader<R>where
R: Sync,
impl<R> Unpin for PackageFileReader<R>where
R: Unpin,
impl<R> UnwindSafe for PackageFileReader<R>where
R: 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<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<R> WgReadExt for Rwhere
R: Read,
impl<R> WgReadExt for Rwhere
R: Read,
Source§fn read_u8(&mut self) -> Result<u8>
fn read_u8(&mut self) -> Result<u8>
Reads an unsigned 8 bit integer from the underlying reader.
Source§fn read_u16(&mut self) -> Result<u16>
fn read_u16(&mut self) -> Result<u16>
Reads an unsigned 16 bit integer from the underlying reader.
Source§fn read_i16(&mut self) -> Result<i16>
fn read_i16(&mut self) -> Result<i16>
Reads a signed 16 bit integer from the underlying reader.
Source§fn read_u24(&mut self) -> Result<u32>
fn read_u24(&mut self) -> Result<u32>
Reads an unsigned 24 bit integer from the underlying reader.
Source§fn read_i24(&mut self) -> Result<i32>
fn read_i24(&mut self) -> Result<i32>
Reads a signed 24 bit integer from the underlying reader.
Source§fn read_u32(&mut self) -> Result<u32>
fn read_u32(&mut self) -> Result<u32>
Reads an unsigned 32 bit integer from the underlying reader.
Source§fn read_i32(&mut self) -> Result<i32>
fn read_i32(&mut self) -> Result<i32>
Reads a signed 32 bit integer from the underlying reader.
Source§fn read_packed_u32(&mut self) -> Result<u32>
fn read_packed_u32(&mut self) -> Result<u32>
Read a packed unsigned 32 bit integer from the underlying reader.
Source§fn read_u64(&mut self) -> Result<u64>
fn read_u64(&mut self) -> Result<u64>
Reads an unsigned 64 bit integer from the underlying reader.
Source§fn read_i64(&mut self) -> Result<i64>
fn read_i64(&mut self) -> Result<i64>
Reads a signed 64 bit integer from the underlying reader.
Source§fn read_f32(&mut self) -> Result<f32>
fn read_f32(&mut self) -> Result<f32>
Reads a IEEE754 single-precision (4 bytes) floating point number
from the underlying reader.
Source§fn check_exact<const N: usize>(&mut self, bytes: &[u8; N]) -> Result<bool>
fn check_exact<const N: usize>(&mut self, bytes: &[u8; N]) -> Result<bool>
Check that the next
N bytes are the exact same as the given array.Source§fn read_blob_variable(&mut self) -> Result<Vec<u8>>
fn read_blob_variable(&mut self) -> Result<Vec<u8>>
Read a blob of a length that is specified with a packed u32 before the
actual vector.
Source§fn read_string(&mut self, len: usize) -> Result<String>
fn read_string(&mut self, len: usize) -> Result<String>
Read an UTF-8 string of the given length.
Source§fn read_string_variable(&mut self) -> Result<String>
fn read_string_variable(&mut self) -> Result<String>
Read an UTF-8 string of a length that is specified with a packed u32
before the actual vector.
Source§fn read_cstring(&mut self, len: usize) -> Result<String>
fn read_cstring(&mut self, len: usize) -> Result<String>
Read a null-terminated string of a fixed length, trailing zeros
are ignored and if no zero is encountered, an invalid data error
is returned.
Source§fn read_cstring_variable(&mut self) -> Result<String>
fn read_cstring_variable(&mut self) -> Result<String>
Read a null-terminated string of unknown length.
fn read_sock_addr_v4(&mut self) -> Result<SocketAddrV4>
fn read_vec3(&mut self) -> Result<Vec3A>
Source§fn read_pickle<'de, T: Deserialize<'de>>(&mut self) -> Result<T>
fn read_pickle<'de, T: Deserialize<'de>>(&mut self) -> Result<T>
Read a Python Pickle of the given
serde::Deserialize type, this also
reads the length of the pickle’s data in the packed header.Source§fn read_single_head(&mut self) -> Result<usize>
fn read_single_head(&mut self) -> Result<usize>
Read the size header for a single structure. To read the header of
a vector, see
read_vector_head.