[−][src]Trait bitstream_io::Endianness
A stream's endianness, or byte order, for determining how bits should be read.
It comes in BigEndian and LittleEndian varieties
(which may be shortened to BE and LE)
and is not something programmers should have to implement
in most cases.
Required methods
fn push<N>(queue: &mut BitQueue<Self, N>, bits: u32, value: N) where
N: Numeric,
N: Numeric,
Pushes the given bits and value onto an accumulator with the given bits and value.
fn pop<N>(queue: &mut BitQueue<Self, N>, bits: u32) -> N where
N: Numeric,
N: Numeric,
Pops a value with the given number of bits from an accumulator with the given bits and value.
fn drop<N>(queue: &mut BitQueue<Self, N>, bits: u32) where
N: Numeric,
N: Numeric,
Drops the given number of bits from an accumulator with the given bits and value.
fn next_zeros<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric,
N: Numeric,
Returns the next number of 0 bits from an accumulator with the given bits and value.
fn next_ones<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric,
N: Numeric,
Returns the next number of 1 bits from an accumulator with the given bits and value.
fn read_signed<R, S>(r: &mut BitReader<R, Self>, bits: u32) -> Result<S> where
R: Read,
S: SignedNumeric,
R: Read,
S: SignedNumeric,
Reads signed value from reader in this endianness
fn write_signed<W, S>(
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric,
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric,
Writes signed value to writer in this endianness
Implementors
impl Endianness for BigEndian[src]
fn push<N>(queue: &mut BitQueue<Self, N>, bits: u32, value: N) where
N: Numeric, [src]
N: Numeric,
fn pop<N>(queue: &mut BitQueue<Self, N>, bits: u32) -> N where
N: Numeric, [src]
N: Numeric,
fn drop<N>(queue: &mut BitQueue<Self, N>, bits: u32) where
N: Numeric, [src]
N: Numeric,
fn next_zeros<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric, [src]
N: Numeric,
fn next_ones<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric, [src]
N: Numeric,
fn read_signed<R, S>(r: &mut BitReader<R, Self>, bits: u32) -> Result<S> where
R: Read,
S: SignedNumeric, [src]
R: Read,
S: SignedNumeric,
fn write_signed<W, S>(
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric, [src]
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric,
impl Endianness for LittleEndian[src]
fn push<N>(queue: &mut BitQueue<Self, N>, bits: u32, value: N) where
N: Numeric, [src]
N: Numeric,
fn pop<N>(queue: &mut BitQueue<Self, N>, bits: u32) -> N where
N: Numeric, [src]
N: Numeric,
fn drop<N>(queue: &mut BitQueue<Self, N>, bits: u32) where
N: Numeric, [src]
N: Numeric,
fn next_zeros<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric, [src]
N: Numeric,
fn next_ones<N>(queue: &BitQueue<Self, N>) -> u32 where
N: Numeric, [src]
N: Numeric,
fn read_signed<R, S>(r: &mut BitReader<R, Self>, bits: u32) -> Result<S> where
R: Read,
S: SignedNumeric, [src]
R: Read,
S: SignedNumeric,
fn write_signed<W, S>(
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric, [src]
w: &mut BitWriter<W, Self>,
bits: u32,
value: S
) -> Result<()> where
W: Write,
S: SignedNumeric,