Function nom::number::streaming::be_i32[][src]

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

Recognizes a big endian signed 4 bytes integer

streaming version: will return Err(nom::Err::Incomplete(_)) if there is not enough data

use nom::number::streaming::be_i32;

let parser = be_i32::<(_, ErrorKind)>;

assert_eq!(parser(b"\x00\x01\x02\x03abcd"), Ok((&b"abcd"[..], 0x00010203)));
assert_eq!(parser(b""), Err(Err::Incomplete(Needed::Size(4))));