public void minimizeRuleSet() { Set<String> ruleDefs = new HashSet<String>(); _minimizeRuleSet(ruleDefs, delegateGrammarTreeRoot); }
public void minimizeRuleSet() { Set<String> ruleDefs = new HashSet<String>(); _minimizeRuleSet(ruleDefs, delegateGrammarTreeRoot); }
public void minimizeRuleSet() { Set<String> ruleDefs = new HashSet<String>(); _minimizeRuleSet(ruleDefs, delegateGrammarTreeRoot); }
public void minimizeRuleSet() { Set<String> ruleDefs = new HashSet<String>(); _minimizeRuleSet(ruleDefs, delegateGrammarTreeRoot); }
public void _minimizeRuleSet(Set<String> ruleDefs, CompositeGrammarTree p) { Set<String> localRuleDefs = new HashSet<String>(); Set<String> overrides = new HashSet<String>(); // compute set of non-overridden rules for this delegate for (Rule r : p.grammar.getRules()) { if ( !ruleDefs.contains(r.name) ) { localRuleDefs.add(r.name); } else if ( !r.name.equals(Grammar.ARTIFICIAL_TOKENS_RULENAME) ) { // record any overridden rule 'cept tokens rule overrides.add(r.name); } } //System.out.println("rule defs for "+p.grammar.name+": "+localRuleDefs); //System.out.println("overridden rule for "+p.grammar.name+": "+overrides); p.grammar.overriddenRules = overrides; // make set of all rules defined thus far walking delegation tree. // the same rule in two delegates resolves in favor of first found // in tree therefore second must not be included ruleDefs.addAll(localRuleDefs); // pass larger set of defined rules to delegates if ( p.children!=null ) { for (CompositeGrammarTree delegate : p.children) { _minimizeRuleSet(ruleDefs, delegate); } } }
public void _minimizeRuleSet(Set<String> ruleDefs, CompositeGrammarTree p) { Set<String> localRuleDefs = new HashSet<String>(); Set<String> overrides = new HashSet<String>(); // compute set of non-overridden rules for this delegate for (Rule r : p.grammar.getRules()) { if ( !ruleDefs.contains(r.name) ) { localRuleDefs.add(r.name); } else if ( !r.name.equals(Grammar.ARTIFICIAL_TOKENS_RULENAME) ) { // record any overridden rule 'cept tokens rule overrides.add(r.name); } } //System.out.println("rule defs for "+p.grammar.name+": "+localRuleDefs); //System.out.println("overridden rule for "+p.grammar.name+": "+overrides); p.grammar.overriddenRules = overrides; // make set of all rules defined thus far walking delegation tree. // the same rule in two delegates resolves in favor of first found // in tree therefore second must not be included ruleDefs.addAll(localRuleDefs); // pass larger set of defined rules to delegates if ( p.children!=null ) { for (CompositeGrammarTree delegate : p.children) { _minimizeRuleSet(ruleDefs, delegate); } } }
public void _minimizeRuleSet(Set<String> ruleDefs, CompositeGrammarTree p) { Set<String> localRuleDefs = new HashSet<String>(); Set<String> overrides = new HashSet<String>(); // compute set of non-overridden rules for this delegate for (Rule r : p.grammar.getRules()) { if ( !ruleDefs.contains(r.name) ) { localRuleDefs.add(r.name); } else if ( !r.name.equals(Grammar.ARTIFICIAL_TOKENS_RULENAME) ) { // record any overridden rule 'cept tokens rule overrides.add(r.name); } } //System.out.println("rule defs for "+p.grammar.name+": "+localRuleDefs); //System.out.println("overridden rule for "+p.grammar.name+": "+overrides); p.grammar.overriddenRules = overrides; // make set of all rules defined thus far walking delegation tree. // the same rule in two delegates resolves in favor of first found // in tree therefore second must not be included ruleDefs.addAll(localRuleDefs); // pass larger set of defined rules to delegates if ( p.children!=null ) { for (CompositeGrammarTree delegate : p.children) { _minimizeRuleSet(ruleDefs, delegate); } } }
public void _minimizeRuleSet(Set<String> ruleDefs, CompositeGrammarTree p) { Set<String> localRuleDefs = new HashSet<String>(); Set<String> overrides = new HashSet<String>(); // compute set of non-overridden rules for this delegate for (Rule r : p.grammar.getRules()) { if ( !ruleDefs.contains(r.name) ) { localRuleDefs.add(r.name); } else if ( !r.name.equals(Grammar.ARTIFICIAL_TOKENS_RULENAME) ) { // record any overridden rule 'cept tokens rule overrides.add(r.name); } } //System.out.println("rule defs for "+p.grammar.name+": "+localRuleDefs); //System.out.println("overridden rule for "+p.grammar.name+": "+overrides); p.grammar.overriddenRules = overrides; // make set of all rules defined thus far walking delegation tree. // the same rule in two delegates resolves in favor of first found // in tree therefore second must not be included ruleDefs.addAll(localRuleDefs); // pass larger set of defined rules to delegates if ( p.children!=null ) { for (CompositeGrammarTree delegate : p.children) { _minimizeRuleSet(ruleDefs, delegate); } } }