pub fn map_parser<I, O, E, F, G>(
    parser: F,
    applied_parser: G,
) -> impl Parser<I, Output = O, Error = E>where
    E: ParseError<I>,
    F: Parser<I, Error = E>,
    G: Parser<<F as Parser<I>>::Output, Output = O, Error = E>,Expand description
Applies a parser over the result of another one.
use nom::character::complete::digit1;
use nom::bytes::complete::take;
use nom::combinator::map_parser;
let mut parse = map_parser(take(5u8), digit1);
assert_eq!(parse.parse("12345"), Ok(("", "12345")));
assert_eq!(parse.parse("123ab"), Ok(("", "123")));
assert_eq!(parse.parse("123"), Err(Err::Error(("123", ErrorKind::Eof))));