pub struct AnsEncoder { /* private fields */ }Expand description
rANS encoder.
Encodes symbols using probability distributions. Due to LIFO semantics, symbols must be encoded in reverse of the desired decode order.
Uses 16-bit word-based renormalization. The encoder accumulates words into a buffer. On finish, it outputs: [state: u32 LE] [word_count: u32 LE] [words in reverse order: u16 LE…]
Implementations§
Source§impl AnsEncoder
impl AnsEncoder
Sourcepub fn encode_symbol(
&mut self,
symbol: u16,
dist: &AnsDistribution,
) -> CodecResult<()>
pub fn encode_symbol( &mut self, symbol: u16, dist: &AnsDistribution, ) -> CodecResult<()>
Encode a single symbol.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AnsEncoder
impl RefUnwindSafe for AnsEncoder
impl Send for AnsEncoder
impl Sync for AnsEncoder
impl Unpin for AnsEncoder
impl UnsafeUnpin for AnsEncoder
impl UnwindSafe for AnsEncoder
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