Package org.parboiled.parserunners
Class ErrorReportingParseRunner<V>
- java.lang.Object
-
- org.parboiled.parserunners.AbstractParseRunner<V>
-
- org.parboiled.parserunners.ErrorReportingParseRunner<V>
-
- All Implemented Interfaces:
MatchHandler
,ParseRunner<V>
public class ErrorReportingParseRunner<V> extends AbstractParseRunner<V> implements MatchHandler
AParseRunner
implementation that creates anInvalidInputError
for the error at a known error location. It never causes the parser to perform more than one parsing run and is rarely used directly. Instead its functionality is relied upon by theReportingParseRunner
andRecoveringParseRunner
classes.
-
-
Constructor Summary
Constructors Constructor Description ErrorReportingParseRunner(Rule rule, int errorIndex)
Creates a new ErrorReportingParseRunner instance for the given rule and the given errorIndex.ErrorReportingParseRunner(Rule rule, int errorIndex, MatchHandler inner)
Creates a new ErrorReportingParseRunner instance for the given rule and the given errorIndex.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
match(MatcherContext<?> context)
Runs the given MatcherContext.ParsingResult<V>
run(InputBuffer inputBuffer)
Performs the actual parse and creates a corresponding ParsingResult instance.-
Methods inherited from class org.parboiled.parserunners.AbstractParseRunner
createParsingResult, createRootContext, getParseErrors, getRootMatcher, getValueStack, resetValueStack, run, run, withParseErrors, withValueStack
-
-
-
-
Constructor Detail
-
ErrorReportingParseRunner
public ErrorReportingParseRunner(Rule rule, int errorIndex)
Creates a new ErrorReportingParseRunner instance for the given rule and the given errorIndex.- Parameters:
rule
- the parser ruleerrorIndex
- the index of the error to report
-
ErrorReportingParseRunner
public ErrorReportingParseRunner(Rule rule, int errorIndex, MatchHandler inner)
Creates a new ErrorReportingParseRunner instance for the given rule and the given errorIndex. The given MatchHandler is used as a delegate for the actual match handling.- Parameters:
rule
- the parser ruleerrorIndex
- the index of the error to reportinner
- another MatchHandler to delegate the actual match handling to, can be null
-
-
Method Detail
-
run
public ParsingResult<V> run(InputBuffer inputBuffer)
Description copied from interface:ParseRunner
Performs the actual parse and creates a corresponding ParsingResult instance.- Specified by:
run
in interfaceParseRunner<V>
- Parameters:
inputBuffer
- the inputBuffer to use- Returns:
- the ParsingResult for the run
-
match
public boolean match(MatcherContext<?> context)
Description copied from interface:MatchHandler
Runs the given MatcherContext.- Specified by:
match
in interfaceMatchHandler
- Parameters:
context
- the MatcherContext- Returns:
- true if matched
-
-