public static RuleContext findTopContext( Parser parser, RuleContext context, IntervalSet values, boolean checkTop) { if (checkTop && values.contains(context.getRuleIndex())) { return context; } if (context.isEmpty()) { return null; } if (values.contains(parser.getATN().states.get(context.invokingState).ruleIndex)) { return context.parent; } return findTopContext(parser, context.parent, values, false); }