public Rule getRule(String name) { Rule r = rules.get(name); if ( r!=null ) return r; return null; /* List<Grammar> imports = getAllImportedGrammars(); if ( imports==null ) return null; for (Grammar g : imports) { r = g.getRule(name); // recursively walk up hierarchy if ( r!=null ) return r; } return null; */ }
public Rule getRule(String name) { Rule r = rules.get(name); if ( r!=null ) return r; return null; /* List<Grammar> imports = getAllImportedGrammars(); if ( imports==null ) return null; for (Grammar g : imports) { r = g.getRule(name); // recursively walk up hierarchy if ( r!=null ) return r; } return null; */ }
public Rule getRule(String name) { Rule r = rules.get(name); if ( r!=null ) return r; return null; /* List<Grammar> imports = getAllImportedGrammars(); if ( imports==null ) return null; for (Grammar g : imports) { r = g.getRule(name); // recursively walk up hierarchy if ( r!=null ) return r; } return null; */ }
public Rule getRule(String name) { Rule r = rules.get(name); if ( r!=null ) return r; return null; /* List<Grammar> imports = getAllImportedGrammars(); if ( imports==null ) return null; for (Grammar g : imports) { r = g.getRule(name); // recursively walk up hierarchy if ( r!=null ) return r; } return null; */ }
public Rule getRule(String name) { Rule r = rules.get(name); if ( r!=null ) return r; return null; /* List<Grammar> imports = getAllImportedGrammars(); if ( imports==null ) return null; for (Grammar g : imports) { r = g.getRule(name); // recursively walk up hierarchy if ( r!=null ) return r; } return null; */ }
public V getElement(int i) { return get(elements.get(i)); }
public V getElement(int i) { return get(elements.get(i)); }
public V getElement(int i) { return get(elements.get(i)); }
public V getElement(int i) { return get(elements.get(i)); }
public V getElement(int i) { return get(elements.get(i)); }
protected String getBaseContextName(String ruleName) { Rule referencedRule = rules.get(ruleName); if (referencedRule != null) { ruleName = referencedRule.getBaseContext(); } return ruleName; }
/** * Define the specified rule in the grammar. This method assigns the rule's * {@link Rule#index} according to the {@link #ruleNumber} field, and adds * the {@link Rule} instance to {@link #rules} and {@link #indexToRule}. * * @param r The rule to define in the grammar. * @return {@code true} if the rule was added to the {@link Grammar} * instance; otherwise, {@code false} if a rule with this name already * existed in the grammar instance. */ public boolean defineRule(Rule r) { if ( rules.get(r.name)!=null ) { return false; } rules.put(r.name, r); r.index = ruleNumber++; indexToRule.add(r); return true; }
/** * Define the specified rule in the grammar. This method assigns the rule's * {@link Rule#index} according to the {@link #ruleNumber} field, and adds * the {@link Rule} instance to {@link #rules} and {@link #indexToRule}. * * @param r The rule to define in the grammar. * @return {@code true} if the rule was added to the {@link Grammar} * instance; otherwise, {@code false} if a rule with this name already * existed in the grammar instance. */ public boolean defineRule(Rule r) { if ( rules.get(r.name)!=null ) { return false; } rules.put(r.name, r); r.index = ruleNumber++; indexToRule.add(r); return true; }
public Rule getRule(String grammarName, String ruleName) { if ( grammarName!=null ) { // scope override Grammar g = getImportedGrammar(grammarName); if ( g ==null ) { return null; } return g.rules.get(ruleName); } return getRule(ruleName); }
public Rule getRule(String grammarName, String ruleName) { if ( grammarName!=null ) { // scope override Grammar g = getImportedGrammar(grammarName); if ( g ==null ) { return null; } return g.rules.get(ruleName); } return getRule(ruleName); }
public Rule getRule(String grammarName, String ruleName) { if ( grammarName!=null ) { // scope override Grammar g = getImportedGrammar(grammarName); if ( g ==null ) { return null; } return g.rules.get(ruleName); } return getRule(ruleName); }
public Rule getRule(String grammarName, String ruleName) { if ( grammarName!=null ) { // scope override Grammar g = getImportedGrammar(grammarName); if ( g ==null ) { return null; } return g.rules.get(ruleName); } return getRule(ruleName); }
public Rule getRule(String grammarName, String ruleName) { if ( grammarName!=null ) { // scope override Grammar g = getImportedGrammar(grammarName); if ( g ==null ) { return null; } return g.rules.get(ruleName); } return getRule(ruleName); }
/** * Define the specified rule in the grammar. This method assigns the rule's * {@link Rule#index} according to the {@link #ruleNumber} field, and adds * the {@link Rule} instance to {@link #rules} and {@link #indexToRule}. * * @param r The rule to define in the grammar. * @return {@code true} if the rule was added to the {@link Grammar} * instance; otherwise, {@code false} if a rule with this name already * existed in the grammar instance. */ public boolean defineRule(@NotNull Rule r) { if ( rules.get(r.name)!=null ) { return false; } rules.put(r.name, r); r.index = ruleNumber++; indexToRule.add(r); return true; }
public static String getLabelName(Grammar g, GrammarAST t) { String tokenText = t.getText(); String tokenName = t.getType() != STRING_LITERAL ? tokenText : g.getTokenName(tokenText); if (tokenName == null || tokenName.startsWith("T__")) { // Do not include tokens with auto generated names return null; } String labelName = tokenName; Rule referencedRule = g.rules.get(labelName); if (referencedRule != null) { labelName = referencedRule.getBaseContext(); } return labelName; }