pub struct BufferReader<'a> { /* private fields */ }Expand description
Simple buffer reader for reading bytes from a slice
Implementations§
Source§impl<'a> BufferReader<'a>
impl<'a> BufferReader<'a>
pub fn new(buffer: &'a [u8]) -> Self
pub fn len(&self) -> usize
Sourcepub fn read_byte(&mut self) -> Result<u8, ReadTracingError>
pub fn read_byte(&mut self) -> Result<u8, ReadTracingError>
Reads a single byte from the buffer. Returns None if end of buffer is reached.
Sourcepub fn read_bytes(&mut self, length: usize) -> Result<&[u8], ReadTracingError>
pub fn read_bytes(&mut self, length: usize) -> Result<&[u8], ReadTracingError>
Reads a slice of bytes of the given length from the buffer. Returns None if not enough data is available.
Sourcepub fn read_varint(&mut self) -> Result<u64, ReadTracingError>
pub fn read_varint(&mut self) -> Result<u64, ReadTracingError>
Reads a LEB128 (VarInt) encoded u64.
Sourcepub fn read_u16(&mut self) -> Result<u16, ReadTracingError>
pub fn read_u16(&mut self) -> Result<u16, ReadTracingError>
Reads a little-endian u16 from the buffer
Sourcepub fn read_u32(&mut self) -> Result<u32, ReadTracingError>
pub fn read_u32(&mut self) -> Result<u32, ReadTracingError>
Reads a little-endian u32 from the buffer
Sourcepub fn read_u64(&mut self) -> Result<u64, ReadTracingError>
pub fn read_u64(&mut self) -> Result<u64, ReadTracingError>
Reads a little-endian u64 from the buffer
pub fn get_position(&self) -> usize
Auto Trait Implementations§
impl<'a> Freeze for BufferReader<'a>
impl<'a> RefUnwindSafe for BufferReader<'a>
impl<'a> Send for BufferReader<'a>
impl<'a> Sync for BufferReader<'a>
impl<'a> Unpin for BufferReader<'a>
impl<'a> UnwindSafe for BufferReader<'a>
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