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>,

source

pub fn new( r: R, buffer: BufferType, alloc_u8: AllocU8, alloc_u32: AllocU32, alloc_hc: AllocHC, invalid_data_error_type: ErrType, ) -> Self

source

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

source

pub fn get_ref(&self) -> &R

source

pub fn get_mut(&mut self) -> &mut R

source

pub fn into_inner(self) -> R

source

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>

source§

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> Freeze for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
where BufferType: Freeze, R: Freeze, ErrType: Freeze, AllocU8: Freeze, AllocU32: Freeze, AllocHC: Freeze, <AllocU8 as Allocator<u8>>::AllocatedMemory: Freeze, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Freeze, <AllocU32 as Allocator<u32>>::AllocatedMemory: Freeze,

§

impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> RefUnwindSafe for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>

§

impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Send for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
where BufferType: Send, R: Send, ErrType: Send, AllocU8: Send, AllocU32: Send, AllocHC: Send, <AllocU8 as Allocator<u8>>::AllocatedMemory: Send, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Send, <AllocU32 as Allocator<u32>>::AllocatedMemory: Send,

§

impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Sync for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
where BufferType: Sync, R: Sync, ErrType: Sync, AllocU8: Sync, AllocU32: Sync, AllocHC: Sync, <AllocU8 as Allocator<u8>>::AllocatedMemory: Sync, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Sync, <AllocU32 as Allocator<u32>>::AllocatedMemory: Sync,

§

impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> Unpin for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
where BufferType: Unpin, R: Unpin, ErrType: Unpin, AllocU8: Unpin, AllocU32: Unpin, AllocHC: Unpin, <AllocU8 as Allocator<u8>>::AllocatedMemory: Unpin, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: Unpin, <AllocU32 as Allocator<u32>>::AllocatedMemory: Unpin,

§

impl<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC> UnwindSafe for DecompressorCustomIo<ErrType, R, BufferType, AllocU8, AllocU32, AllocHC>
where BufferType: UnwindSafe, R: UnwindSafe, ErrType: UnwindSafe, AllocU8: UnwindSafe, AllocU32: UnwindSafe, AllocHC: UnwindSafe, <AllocU8 as Allocator<u8>>::AllocatedMemory: UnwindSafe, <AllocHC as Allocator<HuffmanCode>>::AllocatedMemory: UnwindSafe, <AllocU32 as Allocator<u32>>::AllocatedMemory: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.