Struct Decoder

Source
pub struct Decoder(/* private fields */);
Expand description

A decoder for decompressing data.

Implementations§

Source§

impl Decoder

Source

pub fn new(params: DParams) -> Result<Self, Error>

Create a new Decoder with the given decompression parameters.

Source

pub fn decompress(&mut self, src: &[u8]) -> Result<Vec<u8>, Error>

Decompress the given bytes into a new allocated Vec<u8>.

Note that the returned vector may not be aligned to the original data type’s alignment, and the caller should ensure that the alignment is correct before transmuting it to original type. If the alignment does not match the original data type, the bytes should be copied to a new aligned allocation before transmuting, otherwise undefined behavior may occur. Alternatively, the caller can use Self::decompress_into and provide an already aligned destination buffer.

Source

pub fn decompress_into( &mut self, src: &[u8], dst: &mut [MaybeUninit<u8>], ) -> Result<usize, Error>

Decompress the given bytes into a pre-allocated buffer.

Source

pub fn params(&self) -> DParams

Get the decompression parameters used by this decoder.

Auto Trait Implementations§

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.