pub struct LzfseDecoder { /* private fields */ }
Expand description

LZFSE decoder.

This basic implementation decodes byte slices into byte vectors.

Implementations§

source§

impl LzfseDecoder

source

pub fn decode_bytes(&mut self, src: &[u8], dst: &mut Vec<u8>) -> Result<u64>

Decode src into dst returning the number of bytes written into dst.

Errors
  • Error detailing the nature of any errors.
Aborts

With limited system memory Vec may abort when attempting to allocate sufficient memory. This issue will be resolved in future releases when try_reserve() is stabilized.

Examples
use lzfse_rust::LzfseDecoder;
use std::io;

fn main() -> io::Result<()> {
    // "test" string encoded.
    let enc = vec![
        0x62, 0x76, 0x78, 0x2d, 0x04, 0x00, 0x00, 0x00, 0x74, 0x65, 0x73, 0x74, 0x62, 0x76,
        0x78, 0x24,
    ];
    let mut decoder = LzfseDecoder::default();
    let mut dec = Vec::default();
    let n_bytes = decoder.decode_bytes(&enc, &mut dec)?;
    assert_eq!(n_bytes, 4);
    assert_eq!(dec, b"test");
    Ok(())
}

Trait Implementations§

source§

impl AsMut<LzfseDecoder> for LzfseRingDecoder

source§

fn as_mut(&mut self) -> &mut LzfseDecoder

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl Debug for LzfseDecoder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for LzfseDecoder

source§

fn default() -> LzfseDecoder

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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 Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.