enum State {
U32 {
kind: U32ValueKind,
bytes: [u8; 4],
accumulated_count: usize,
},
ReadChunkData(ChunkType),
ParseChunkData(ChunkType),
ImageData(ChunkType),
}
Variants§
U32
In this state we are reading a u32 value from external input. We start with
accumulated_count
set to 0
. After reading or accumulating the required 4 bytes we will
call parse_32
which will then move onto the next state.
ReadChunkData(ChunkType)
In this state we are reading chunk data from external input, and appending it to
ChunkState::raw_bytes
.
ParseChunkData(ChunkType)
In this state we check if all chunk data has been already read into ChunkState::raw_bytes
and if so then we parse the chunk. Otherwise, we go back to the ReadChunkData
state.
ImageData(ChunkType)
In this state we are reading image data from external input and feeding it directly into
StreamingDecoder::inflater
.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for State
impl RefUnwindSafe for State
impl Send for State
impl Sync for State
impl Unpin for State
impl UnwindSafe for State
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