rustmax::nom::character::streaming

Function not_line_ending

Source
pub fn not_line_ending<T, E>(input: T) -> Result<(T, T), Err<E>>
where E: ParseError<T>, T: Input + Compare<&'static str>, <T as Input>::Item: AsChar,
Expand description

Recognizes a string of any char except ‘\r\n’ or ‘\n’.

Streaming version: Will return Err(nom::Err::Incomplete(_)) if there’s not enough input data.

§Example

assert_eq!(not_line_ending::<_, (_, ErrorKind)>("ab\r\nc"), Ok(("\r\nc", "ab")));
assert_eq!(not_line_ending::<_, (_, ErrorKind)>("abc"), Err(Err::Incomplete(Needed::Unknown)));
assert_eq!(not_line_ending::<_, (_, ErrorKind)>(""), Err(Err::Incomplete(Needed::Unknown)));
assert_eq!(not_line_ending::<_, (_, ErrorKind)>("a\rb\nc"), Err(Err::Error(("a\rb\nc", ErrorKind::Tag ))));
assert_eq!(not_line_ending::<_, (_, ErrorKind)>("a\rbc"), Err(Err::Error(("a\rbc", ErrorKind::Tag ))));