ruzstd::decoding::bit_reader_reverse

Struct BitReaderReversed

Source
pub struct BitReaderReversed<'s> { /* private fields */ }
Expand description

Zstandard encodes some types of data in a way that the data must be read back to front to decode it properly. BitReaderReversed provides a convenient interface to do that.

Implementations§

Source§

impl<'s> BitReaderReversed<'s>

Source

pub fn bits_remaining(&self) -> isize

How many bits are left to read by the reader.

Source

pub fn new(source: &'s [u8]) -> BitReaderReversed<'s>

Source

pub fn get_bits(&mut self, n: u8) -> u64

Read n number of bits from the source. Will read at most 56 bits. If there are no more bits to be read from the source zero bits will be returned instead.

Source

pub fn get_bits_triple(&mut self, n1: u8, n2: u8, n3: u8) -> (u64, u64, u64)

Same as calling get_bits three times but slightly more performant

Source

pub fn reset(&mut self, new_source: &'s [u8])

Auto Trait Implementations§

§

impl<'s> Freeze for BitReaderReversed<'s>

§

impl<'s> RefUnwindSafe for BitReaderReversed<'s>

§

impl<'s> Send for BitReaderReversed<'s>

§

impl<'s> Sync for BitReaderReversed<'s>

§

impl<'s> Unpin for BitReaderReversed<'s>

§

impl<'s> UnwindSafe for BitReaderReversed<'s>

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

Source§

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

Source§

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.