}
// end of rule node
if ( state.isAcceptState() ) {
NFAState invokingState = (NFAState)ruleInvocationStack.pop();
// System.out.println("pop invoking state "+invokingState);
RuleClosureTransition invokingTransition =
(RuleClosureTransition)invokingState.transition(0);
// move to node after state that invoked this rule
state = invokingTransition.getFollowState();
continue;
}
if ( state.getNumberOfTransitions()==1 ) {
// no branching, just take this path
Transition t0 = state.transition(0);