Trait InflateBackend

Source
pub trait InflateBackend: Backend {
    // Required methods
    fn make(zlib_header: bool, window_bits: u8) -> Self;
    fn decompress(
        &mut self,
        input: &[u8],
        output: &mut [u8],
        flush: FlushDecompress,
    ) -> Result<Status, DecompressError>;
    fn reset(&mut self, zlib_header: bool);

    // Provided method
    fn decompress_uninit(
        &mut self,
        input: &[u8],
        output: &mut [MaybeUninit<u8>],
        flush: FlushDecompress,
    ) -> Result<Status, DecompressError> { ... }
}

Required Methods§

Source

fn make(zlib_header: bool, window_bits: u8) -> Self

Source

fn decompress( &mut self, input: &[u8], output: &mut [u8], flush: FlushDecompress, ) -> Result<Status, DecompressError>

Source

fn reset(&mut self, zlib_header: bool)

Provided Methods§

Source

fn decompress_uninit( &mut self, input: &[u8], output: &mut [MaybeUninit<u8>], flush: FlushDecompress, ) -> Result<Status, DecompressError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§