Crate bitvec_nom2

Source
Expand description

This crate provides input types for nom parser combinators using bitvec. With those, you can use common nom combinators directly on streams of bits.

§Example

let data = [0xA5u8, 0x69, 0xF0, 0xC3];
let bits = data.view_bits::<Msb0>();

fn parser(bits: &BitSlice<Msb0, u8>) -> IResult<&BitSlice<Msb0, u8>, &BitSlice<Msb0, u8>> {
  tag(bits![1, 0, 1, 0])(bits)
}

assert_eq!(parser(bits), Ok((&bits[..4], &bits[4..])));

Structs§

BArray
BSlice