pub fn parse_string(input: Span) -> ParseResult<BasicTypeExpression> {
    // Finally, parse the string. Note that, if `build_string` could accept a raw
    // " character, the closing delimiter " would never match. When using
    // `delimited` with a looping parser (like fold_many0), be sure that the
    // loop won't accidentally match your closing delimiter!
    let (i, o) = complete(delimited(char('"'), build_string, char('"')))(input)?;
    Ok((i, BasicTypeExpression::String(o)))
}
/// Parse a string. Use a loop of parse_fragment and push all of the fragments
/// into an output string.
Parse a string. Use a loop of parse_fragment and push all of the fragments
into an output string.
Parse a string . Use a loop of parse_fragment and push all of the fragments into an output string .
pub fn parse_string(input: Span) -> ParseResult<BasicTypeExpression> {
    // Finally, parse the string. Note that, if `build_string` could accept a raw
    // " character, the closing delimiter " would never match. When using
    // `delimited` with a looping parser (like fold_many0), be sure that the
    // loop won't accidentally match your closing delimiter!
    let (i, o) = complete(delimited(char('"'), build_string, char('"')))(input)?;
    Ok((i, BasicTypeExpression::String(o)))
}
pub fn parse_string ( input : Span ) -> ParseResult < BasicTypeExpression > { // Finally, parse the string. Note that, if `build_string` could accept a raw // " character, the closing delimiter " would never match. When using // `delimited` with a looping parser (like fold_many0), be sure that the // loop won't accidentally match your closing delimiter! let ( i , o ) = complete ( delimited ( char ( '"' ) , build_string , char ( '"' ) ) ) ( input ) ? ; Ok ( ( i , BasicTypeExpression :: String ( o ) ) ) }
Parse a string.
Parse a string .
input
Span