if (caller != null) { activeStates.add(new ParsingState(caller.followState, tokenIndex, caller.parent)); activeStates.add(new ParsingState(transition.target, tokenIndex, new CallerContext(caller, ((RuleTransition) transition).followState))); activeStates.add(new ParsingState(transition.target, tokenIndex, caller)); activeStates.add(new ParsingState(transition.target, tokenIndex + 1, caller));
if (caller != null) { activeStates.add(new ParsingState(caller.followState, tokenIndex, caller.parent)); activeStates.add(new ParsingState(transition.target, tokenIndex, new CallerContext(caller, ((RuleTransition) transition).followState))); activeStates.add(new ParsingState(transition.target, tokenIndex, caller)); activeStates.add(new ParsingState(transition.target, tokenIndex + 1, caller));
public Multimap<Integer, String> process(ATNState currentState, int tokenIndex, RuleContext context) { return process(new ParsingState(currentState, tokenIndex, makeCallStack(context))); }
public Multimap<Integer, String> process(ATNState currentState, int tokenIndex, RuleContext context) { return process(new ParsingState(currentState, tokenIndex, makeCallStack(context))); }