[][src]Function genie_support::read_opt_u16

pub fn read_opt_u16<T, R>(input: R) -> Result<Option<T>> where
    T: TryFrom<u16>,
    T::Error: Error + Send + Sync + 'static,
    R: Read

Read a 2-byte integer that uses -1 as an "absent" value.

Example

use genie_support::read_opt_u16;

let mut minus_one = std::io::Cursor::new(vec![0xFF, 0xFF]);
let mut zero = std::io::Cursor::new(vec![0x00, 0x00]);

assert_eq!(read_opt_u16::<u16, _>(&mut minus_one).unwrap(), None);
assert_eq!(read_opt_u16(&mut zero).unwrap(), Some(0));