Package org.parboiled.parserunners
Class ProfilingParseRunner<V>
- java.lang.Object
-
- org.parboiled.parserunners.AbstractParseRunner<V>
-
- org.parboiled.parserunners.ProfilingParseRunner<V>
-
- Type Parameters:
V-
- All Implemented Interfaces:
MatchHandler,ParseRunner<V>
public class ProfilingParseRunner<V> extends AbstractParseRunner<V> implements MatchHandler
The ProfilingParseRunner is a special
ParseRunnerimplementation that "watches" a parser digest a number of inputs and collects all sorts of statistical data on the what rules have matched how many times, the number of reincovations of rules at identical input locations, and so on.The ProfilingParseRunner is typically used during parser debugging and optimization, not in production.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classProfilingParseRunner.Reportstatic classProfilingParseRunner.RuleReport
-
Constructor Summary
Constructors Constructor Description ProfilingParseRunner(Rule rule)Creates a new ProfilingParseRunner instance for the given rule.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ProfilingParseRunner.ReportgetReport()booleanmatch(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
-
ProfilingParseRunner
public ProfilingParseRunner(Rule rule)
Creates a new ProfilingParseRunner instance for the given rule.- Parameters:
rule- the parser rule
-
-
Method Detail
-
run
public ParsingResult<V> run(InputBuffer inputBuffer)
Description copied from interface:ParseRunnerPerforms the actual parse and creates a corresponding ParsingResult instance.- Specified by:
runin interfaceParseRunner<V>- Parameters:
inputBuffer- the inputBuffer to use- Returns:
- the ParsingResult for the run
-
getReport
public ProfilingParseRunner.Report getReport()
-
match
public boolean match(MatcherContext<?> context)
Description copied from interface:MatchHandlerRuns the given MatcherContext.- Specified by:
matchin interfaceMatchHandler- Parameters:
context- the MatcherContext- Returns:
- true if matched
-
-