Class ReportingParseRunner<V>

  • All Implemented Interfaces:
    ParseRunner<V>
    Direct Known Subclasses:
    TracingParseRunner

    public class ReportingParseRunner<V>
    extends AbstractParseRunner<V>
    A ParseRunner implementation that properly reports the first InvalidInputError if the input does not conform to the rule grammar. It performs exactly as the BasicParseRunner on valid input, however, on invalid input two more parsing runs are initiated: one for recording the first parse error and one for collecting the error report information.
    • Constructor Detail

      • ReportingParseRunner

        public ReportingParseRunner​(Rule rule)
        Creates a new ReportingParseRunner instance for the given rule.
        Parameters:
        rule - the parser rule
    • Method Detail

      • run

        @Deprecated
        public static <V> ParsingResult<V> run​(Rule rule,
                                               String input)
        Deprecated.
        As of 0.11.0 you should use the "regular" constructor and one of the "run" methods rather than this static method. This method will be removed in one of the coming releases.
        Create a new ReportingParseRunner instance with the given rule and input text and returns the result of its AbstractParseRunner.run(String) method invocation.
        Parameters:
        rule - the parser rule to run
        input - the input text to run on
        Returns:
        the ParsingResult for the parsing run
      • run

        public ParsingResult<V> run​(InputBuffer inputBuffer)
        Description copied from interface: ParseRunner
        Performs the actual parse and creates a corresponding ParsingResult instance.
        Parameters:
        inputBuffer - the inputBuffer to use
        Returns:
        the ParsingResult for the run