public final MatcherContext<V> getBasicSubContext() { if (subContext == null) { // init new level subContext = new MatcherContext<V>(inputBuffer, valueStack, parseErrors, matchHandler, this, level + 1, fastStringMatching, memoizedMismatches); } else { subContext.path = null; // we always need to reset the MatcherPath, even for actions } return subContext; }
protected void createRootContext(MatchHandler<V> matchHandler) { rootContext = new MatcherContext<V>(inputBuffer, parseErrors, matchHandler, rootMatcher); }
protected void createRootContext(MatchHandler<V> matchHandler) { rootContext = new MatcherContext<V>(inputBuffer, parseErrors, matchHandler, rootMatcher); }
protected MatcherContext<V> createRootContext(InputBuffer inputBuffer, MatchHandler matchHandler, boolean fastStringMatching) { return new MatcherContext<V>(inputBuffer, getValueStack(), getParseErrors(), matchHandler, rootMatcher, fastStringMatching); }