pub fn utf16_le<'a, I>() -> impl Parser<I, Output = char>Expand description
A UTF-16 encoded u8 decoder. (little-endian)
ยงExamples
use somen::prelude::*;
let mut parser = utf16_le();
let mut stream = stream::from_slice(
b"\x34\xD8\x1E\xDD\x4d\x00\x75\x00\x73\x00\x69\x00\x63\x00\x34\xD8",
);
assert_eq!(parser.parse(&mut stream).await, Ok('๐'));
assert_eq!(parser.parse(&mut stream).await, Ok('M'));
assert_eq!(parser.parse(&mut stream).await, Ok('u'));
assert_eq!(parser.parse(&mut stream).await, Ok('s'));
assert_eq!(parser.parse(&mut stream).await, Ok('i'));
assert_eq!(parser.parse(&mut stream).await, Ok('c'));
assert!(parser.parse(&mut stream).await.is_err());