pub fn mapr<'a, P, F, A, B, E>( p: P, f: F, ) -> impl Fn(&'a str) -> ParseResult<'_, B>where P: Fn(&'a str) -> ParseResult<'_, A>, F: Fn(A) -> Result<B, E>,