Struct huffman_compress::Tree

source ·
pub struct Tree<K> { /* private fields */ }
Expand description

A trie used for decoding.

Implementations§

source§

impl<K: Clone> Tree<K>

source

pub fn unbounded_decoder<I>(&self, iterable: I) -> UnboundedDecoder<'_, K, I> where I: IntoIterator<Item = bool>,

An iterator decoding symbols from a source of bits.

In pathologic cases the iterator is unbounded: If there is only one symbol the iterator will yield that symbol infinitely often without consuming any bits.

If there are no symbols the decoded sequence is empty without consuming any bits.

If the source is exhausted no further symbols will be decoded (not even incomplete ones).

source

pub fn decoder<I>(&self, iterable: I, num_symbols: usize) -> Decoder<'_, K, I>where I: IntoIterator<Item = bool>,

An iterator decoding up to num_symbols symbols from a source of bits.

Also see unbounded_decoder().

If there are no symbols the decoded sequence is empty without consuming any bits.

If the source is exhausted no further symbols will be decoded (not even incomplete ones).

Trait Implementations§

source§

impl<K: Clone> Clone for Tree<K>

source§

fn clone(&self) -> Tree<K>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<K: Debug> Debug for Tree<K>

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<K> RefUnwindSafe for Tree<K>where K: RefUnwindSafe,

§

impl<K> Send for Tree<K>where K: Send,

§

impl<K> Sync for Tree<K>where K: Sync,

§

impl<K> Unpin for Tree<K>where K: Unpin,

§

impl<K> UnwindSafe for Tree<K>where K: UnwindSafe,

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,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere 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 Twhere 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.