fn prose_val<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &str, E> {
    let is_inner = |x| matches!(x, '\x20'..='\x3D' | '\x3F'..='\x7E');

    delimited(char('<'), take_while(is_inner), char('>'))(input)
}
/// Bracketed string of SP and VCHAR without angles prose description, to be used as last resort.
///
/// ```abnf
/// prose-val = "<" *(%x20-3D / %x3F-7E) ">"
/// ```
Bracketed string of SP and VCHAR without angles prose description, to be used as last resort.
Bracketed string of SP and VCHAR without angles prose description to be used as last resort .
fn prose_val<'a, E: ParseError<&'a str>>(input: &'a str) -> IResult<&'a str, &str, E> {
    let is_inner = |x| matches!(x, '\x20'..='\x3D' | '\x3F'..='\x7E');
    delimited(char('<'), take_while(is_inner), char('>'))(input)
}
fn prose_val < ' a , E : ParseError < & ' a str > > ( input : & ' a str ) -> IResult < & ' a str , & str , E > { let is_inner = | x | matches ! ( x '\x20' '\x3D' '\x3F' '\x7E' ) ; delimited ( char ( '<' ) , take_while ( is_inner ) , char ( '>' ) ) ( input ) }
Bracketed string of SP and VCHAR without angles prose description, to be used as last resort.
Bracketed string of SP and VCHAR without angles prose description to be used as last resort .
input
&'a str
input
&'a str