pub struct HuffmanNode {
pub symbol: Option<u8>,
pub freq: u32,
pub left: Option<Box<HuffmanNode>>,
pub right: Option<Box<HuffmanNode>>,
}Expand description
A node in a Huffman tree.
Fields§
§symbol: Option<u8>Present only on leaf nodes; the symbol value.
freq: u32Aggregate frequency of the subtree rooted here.
left: Option<Box<HuffmanNode>>Left child (lower-frequency subtree).
right: Option<Box<HuffmanNode>>Right child (higher-frequency subtree).
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HuffmanNode
impl RefUnwindSafe for HuffmanNode
impl Send for HuffmanNode
impl Sync for HuffmanNode
impl Unpin for HuffmanNode
impl UnsafeUnpin for HuffmanNode
impl UnwindSafe for HuffmanNode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more