public static RuleNames getRuleNames(AbstractRule rule) { Adapter adapter = (Adapter) EcoreUtil.getAdapter(rule.eAdapters(), RuleNames.class); if (adapter == null) { throw new IllegalStateException("Cannot find adapter"); } return adapter.getRuleNames(); }
public static RuleNames tryGetRuleNames(AbstractRule rule) { Adapter adapter = (Adapter) EcoreUtil.getAdapter(rule.eAdapters(), RuleNames.class); if (adapter == null) { return null; } return adapter.getRuleNames(); }
public static RuleNames getRuleNames(Grammar grammar, boolean cache) { if (cache) { Adapter adapter = (Adapter) EcoreUtil.getAdapter(grammar.eAdapters(), RuleNames.class); if (adapter == null) { return new RuleNames(grammar, true); } return adapter.getRuleNames(); } return new RuleNames(grammar, false); }