Expand description

A collection of excellent utilities for nom, including:

  • ParserExt, a trait which makes available many common nom parser combinators as postfix methods, to complement those already available on nom::Parser.
  • ErrorTree, a nom error which retains as much information and context as possible about the details of the failed parse, with an excellent indenting formatter for printing these failures. Integrates with the extra error features of nom-supreme.
  • Improved tag parsers, which attach the mismatched the error in the event of a parse failure, similar to char.
  • parse_separated_terminated, the perfected folding parser for building parse loops.
  • final_parser, which serves as a bridge between nom-style IResult parsers and more typical rust results. It decorates a nom parser, requiring it to parse all of its input, not return Incomplete. It also uses an ExtractContext trait to convert the error locations in nom errors, which are usually just suffixes of the input, into more useful locations, such as a line and column number.

Re-exports

pub use parser_ext::ParserExt;

Modules

Enhanced context combinator for nom.

An error type, ErrorTree, designed to retain much more useful information about parse failures than the built-in nom error types. Requires the error feature to be enabled.

Entry point layer into nom parsers. See final_parser for details.

Perfected looping parsers designed to behave more reliably and provide more useful parse errors.

Extensions to the nom Parser trait which add postfix versions of the common combinators. See ParserExt for details.

Enhanced tag parser for nom.