Function nom::number::complete::be_u24[][src]

pub fn be_u24<'a, E: ParseError<&'a [u8]>>(
    i: &'a [u8]
) -> IResult<&'a [u8], u32, E>

Recognizes a big endian unsigned 3 byte integer

complete version: returns an error if there is not enough input data

use nom::number::complete::be_u24;

let parser = |s| {
  be_u24(s)
};

assert_eq!(parser(b"\x00\x03\x05abcefg"), Ok((&b"abcefg"[..], 0x000305)));
assert_eq!(parser(b"\x01"), Err(Err::Error((&[0x01][..], ErrorKind::Eof))));