case Transition.EPSILON : return new EpsilonTransition(target); case Transition.RANGE : if (arg3 != 0) {
EpsilonTransition returnTransition = new EpsilonTransition(ruleTransition.followState, outermostPrecedenceReturn); atn.ruleToStopState[ruleTransition.target.ruleIndex].addTransition(returnTransition); atn.ruleToStartState[i].addTransition(new EpsilonTransition(bypassStart)); bypassStop.addTransition(new EpsilonTransition(endState)); bypassStart.addTransition(new EpsilonTransition(matchState));
protected void epsilon(ATNState a, ATNState b, boolean prepend) { if ( a!=null ) { int index = prepend ? 0 : a.getNumberOfTransitions(); a.addTransition(index, new EpsilonTransition(b)); } }
protected void epsilon(ATNState a, ATNState b, boolean prepend) { if ( a!=null ) { int index = prepend ? 0 : a.getNumberOfTransitions(); a.addTransition(index, new EpsilonTransition(b)); } }
protected void epsilon(ATNState a, ATNState b, boolean prepend) { if ( a!=null ) { int index = prepend ? 0 : a.getNumberOfTransitions(); a.addTransition(index, new EpsilonTransition(b)); } }
protected void epsilon(ATNState a, ATNState b, boolean prepend) { if ( a!=null ) { int index = prepend ? 0 : a.getNumberOfTransitions(); a.addTransition(index, new EpsilonTransition(b)); } }
case Transition.EPSILON : return new EpsilonTransition(target); case Transition.RANGE : if (arg3 != 0) {
case Transition.EPSILON : return new EpsilonTransition(target); case Transition.RANGE : if (arg3 != 0) {
case Transition.EPSILON : return new EpsilonTransition(target); case Transition.RANGE : if (arg3 != 0) {
case Transition.EPSILON : return new EpsilonTransition(target); case Transition.RANGE : if (arg3 != 0) {
protected void epsilon(ATNState a, @NotNull ATNState b, boolean prepend) { for (Transition t : a.getTransitions()) { if (t.getSerializationType() != Transition.EPSILON) { continue; } if (t.target == b && ((EpsilonTransition)t).outermostPrecedenceReturn() == -1) { // This transition was already added return; } } if ( a!=null ) { int index = prepend ? 0 : a.getNumberOfTransitions(); a.addTransition(index, new EpsilonTransition(b)); } }
optimizedTransitions.add(new EpsilonTransition(target));
EpsilonTransition returnTransition = new EpsilonTransition(ruleTransition.followState, outermostPrecedenceReturn); atn.ruleToStopState[ruleTransition.target.ruleIndex].addTransition(returnTransition); atn.ruleToStartState[i].addTransition(new EpsilonTransition(bypassStart)); bypassStop.addTransition(new EpsilonTransition(endState)); bypassStart.addTransition(new EpsilonTransition(matchState));
EpsilonTransition transition = new EpsilonTransition(atn.states.get(returnTransition.getItem2()), returnTransition.getItem3()); atn.ruleToStopState[returnTransition.getItem1()].addTransition(transition); atn.ruleToStartState[i].addTransition(new EpsilonTransition(bypassStart)); bypassStop.addTransition(new EpsilonTransition(endState)); bypassStart.addTransition(new EpsilonTransition(matchState));
intermediateState.setRuleIndex(target.ruleIndex); atn.addState(intermediateState); optimizedTransitions.add(new EpsilonTransition(intermediateState));
optimizedTransitions.add(new EpsilonTransition(setOptimizedState));
EpsilonTransition returnTransition = new EpsilonTransition(ruleTransition.followState, outermostPrecedenceReturn); atn.ruleToStopState[ruleTransition.target.ruleIndex].addTransition(returnTransition); atn.ruleToStartState[i].addTransition(new EpsilonTransition(bypassStart)); bypassStop.addTransition(new EpsilonTransition(endState)); bypassStart.addTransition(new EpsilonTransition(matchState));
EpsilonTransition returnTransition = new EpsilonTransition(ruleTransition.followState, outermostPrecedenceReturn); atn.ruleToStopState[ruleTransition.target.ruleIndex].addTransition(returnTransition); atn.ruleToStartState[i].addTransition(new EpsilonTransition(bypassStart)); bypassStop.addTransition(new EpsilonTransition(endState)); bypassStart.addTransition(new EpsilonTransition(matchState));