Struct brotli_decompressor::reader::DecompressorCustomIo
source · pub struct DecompressorCustomIo<ErrType, R: CustomRead<ErrType>, BufferType: SliceWrapperMut<u8>, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> { /* private fields */ }
Implementations§
source§impl<ErrType, R: CustomRead<ErrType>, BufferType: SliceWrapperMut<u8>, AllocU8, AllocU32, AllocHC> DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where
AllocU8: Allocator<u8>,
AllocU32: Allocator<u32>,
AllocHC: Allocator<HuffmanCode>,
impl<ErrType, R: CustomRead<ErrType>, BufferType: SliceWrapperMut<u8>, AllocU8, AllocU32, AllocHC> DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>,
pub fn new( r: R, buffer: BufferType, alloc_u8: AllocU8, alloc_u32: AllocU32, alloc_hc: AllocHC, invalid_data_error_type: ErrType ) -> Self
pub fn new_with_custom_dictionary( r: R, buffer: BufferType, alloc_u8: AllocU8, alloc_u32: AllocU32, alloc_hc: AllocHC, dict: AllocU8::AllocatedMemory, invalid_data_error_type: ErrType ) -> Self
pub fn get_ref(&self) -> &R
pub fn get_mut(&mut self) -> &mut R
pub fn into_inner(self) -> R
pub fn copy_to_front(&mut self)
Trait Implementations§
source§impl<ErrType, R: CustomRead<ErrType>, BufferType: SliceWrapperMut<u8>, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> CustomRead<ErrType> for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
impl<ErrType, R: CustomRead<ErrType>, BufferType: SliceWrapperMut<u8>, AllocU8: Allocator<u8>, AllocU32: Allocator<u32>, AllocHC: Allocator<HuffmanCode>> CustomRead<ErrType> for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
source§fn read(&mut self, buf: &mut [u8]) -> Result<usize, ErrType>
fn read(&mut self, buf: &mut [u8]) -> Result<usize, ErrType>
This variant of read will return Ok(number of bytes read) until the file Is completed at which point it will return Ok(0). However if there are additional unconsumed bytes in the buffer, it will return Err(InvalidData) at that point. Otherwise it will keep returning Ok(0).
Arguments
buf
- The buffer to read into
Errors
Returns Ok(0) if the file has been fully decompressed. If the file has been fully decompressed but there are additional non-brotli bytes in the buffer, then return an InvalidData error. Also upstream errors from the reader are returned.
Auto Trait Implementations§
impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> RefUnwindSafe for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocHC: RefUnwindSafe, AllocU32: RefUnwindSafe, AllocU8: RefUnwindSafe, BufferType: RefUnwindSafe, ErrType: RefUnwindSafe, R: RefUnwindSafe, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: RefUnwindSafe, <AllocU32 as Allocator<u32>>::AllocatedMemory: RefUnwindSafe, <AllocU8 as Allocator<u8>>::AllocatedMemory: RefUnwindSafe,
impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Send for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocHC: Send, AllocU32: Send, AllocU8: Send, BufferType: Send, ErrType: Send, R: Send, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Send, <AllocU32 as Allocator<u32>>::AllocatedMemory: Send, <AllocU8 as Allocator<u8>>::AllocatedMemory: Send,
impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Sync for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocHC: Sync, AllocU32: Sync, AllocU8: Sync, BufferType: Sync, ErrType: Sync, R: Sync, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Sync, <AllocU32 as Allocator<u32>>::AllocatedMemory: Sync, <AllocU8 as Allocator<u8>>::AllocatedMemory: Sync,
impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Unpin for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocHC: Unpin, AllocU32: Unpin, AllocU8: Unpin, BufferType: Unpin, ErrType: Unpin, R: Unpin, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Unpin, <AllocU32 as Allocator<u32>>::AllocatedMemory: Unpin, <AllocU8 as Allocator<u8>>::AllocatedMemory: Unpin,
impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> UnwindSafe for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>where AllocHC: UnwindSafe, AllocU32: UnwindSafe, AllocU8: UnwindSafe, BufferType: UnwindSafe, ErrType: UnwindSafe, R: UnwindSafe, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: UnwindSafe, <AllocU32 as Allocator<u32>>::AllocatedMemory: UnwindSafe, <AllocU8 as Allocator<u8>>::AllocatedMemory: 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