Function parser_combinators::char::satisfy [] [src]

pub fn satisfy<I, Pred>(pred: Pred) -> Satisfy<I, Pred> where I: Stream<Item=char>, Pred: FnMut(char) -> bool

Parses a character and succeeds depending on the result of pred

 let mut parser = satisfy(|c| c == '!' || c == '?');
 assert_eq!(parser.parse("!").map(|x| x.0), Ok('!'));
 assert_eq!(parser.parse("?").map(|x| x.0), Ok('?'));