Struct chd::Hunk

source ·
pub struct Hunk<'a, F: Read + Seek> { /* private fields */ }
Expand description

A reference to a compressed Hunk in a CHD file.

Implementations§

source§

impl<'a, F: Read + Seek> Hunk<'a, F>

source

pub fn read_hunk_in( &mut self, compressed_buffer: &mut Vec<u8>, output: &mut [u8] ) -> Result<usize>

Decompresses the hunk into output, using the provided temporary buffer to hold the compressed hunk. The size of the output buffer must be equal to the hunk size of the CHD file.

Returns the number of bytes decompressed on success, which should be the length of the output buffer.

If the hunk refers to a parent CHD that was not provided, this will return Error::RequiresParent.

If the provided output buffer is the wrong length, this will return If the hunk refers to a parent CHD that was not provided, this will return Error::OutOfMemory.

source

pub fn read_raw_in(&mut self, output: &mut Vec<u8>) -> Result<usize>

Read the raw, compressed contents of the hunk into the provided buffer.

Returns the number of bytes read on success.

source

pub fn len(&self) -> usize

Returns the length of this hunk in bytes.

Auto Trait Implementations§

§

impl<'a, F> RefUnwindSafe for Hunk<'a, F>
where F: RefUnwindSafe,

§

impl<'a, F> Send for Hunk<'a, F>
where F: Send,

§

impl<'a, F> Sync for Hunk<'a, F>
where F: Sync,

§

impl<'a, F> Unpin for Hunk<'a, F>

§

impl<'a, F> !UnwindSafe for Hunk<'a, F>

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

§

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

§

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.