public IntervalSet[] getDecisionLookahead(ATNState s) {if ( s==null ) {return null;}IntervalSet[] look = new IntervalSet[s.getNumberOfTransitions()];for (int alt = 0; alt < s.getNumberOfTransitions(); alt++) {look[alt] = new IntervalSet();Set<ATNConfig> lookBusy = new HashSet<ATNConfig>();boolean seeThruPreds = false; _LOOK(s.transition(alt).target, null, PredictionContext.EMPTY,look[alt], lookBusy, new BitSet(), seeThruPreds, false);if ( look[alt].size()==0 || look[alt].contains(HIT_PRED) ) {look[alt] = null;}}return look;}

public IntervalSet [ ] getDecisionLookahead ( ATNState s ) { if ( s == null ) { return null ; } IntervalSet [ ] look = new IntervalSet [ s . getNumberOfTransitions ( ) ] ; for ( int alt = 0 ; alt < s . getNumberOfTransitions ( ) ; alt ++ ) { look [ alt ] = new IntervalSet ( ) ; Set < ATNConfig > lookBusy = new HashSet < ATNConfig > ( ) ; boolean seeThruPreds = false ; _LOOK ( s . transition ( alt ) . target , null , PredictionContext . EMPTY , look [ alt ] , lookBusy , new BitSet ( ) , seeThruPreds , false ) ; if ( look [ alt ] . size ( ) == 0 || look [ alt ] . contains ( HIT_PRED ) ) { look [ alt ] = null ; } } return look ; }
public virtual IntervalSet[] GetDecisionLookahead(ATNState s){if (s == null){return null;}IntervalSet[] look = new IntervalSet[s.NumberOfTransitions];for (int alt = 0; alt < s.NumberOfTransitions; alt++){look[alt] = new IntervalSet();HashSet<ATNConfig> lookBusy = new HashSet<ATNConfig>();bool seeThruPreds = false;Look(s.Transition(alt).target, null, PredictionContext.EMPTY, look[alt], lookBusy, new BitSet(), seeThruPreds, false);if (look[alt].Count == 0 || look[alt].Contains(HitPred)){look[alt] = null;}}return look;}
