/// <summary> /// Succeeds if the specified parser succeeds, ignoring any whitespace characters beforehand or afterward. /// </summary> public static IParser <T> Trim <T>(this IParser <T> parser) => parser.Bracketed(WhiteSpace.Many());
static IParser <T> Bracketed <T>(this IParser <T> parser, string openBracket, string closeBracket) => parser.Bracketed(PunctuationParser(openBracket), PunctuationParser(closeBracket));
/// <summary> /// Succeeds if the specified parser succeeds beforehand and afterward (ignoring its results). /// </summary> public static IParser <TValue> Bracketed <TValue, TBracketing>(this IParser <TValue> parser, IParser <TBracketing> bracketedBy) => parser.Bracketed(bracketedBy, bracketedBy);