Antlr4.Tool.Grammar.GetImportedGrammar C# (CSharp) Метод

GetImportedGrammar() публичный Метод

public GetImportedGrammar ( string name ) : Grammar
name string
Результат Grammar
        public virtual Grammar GetImportedGrammar(string name)
        {
            foreach (Grammar g in importedGrammars)
            {
                if (g.name.Equals(name))
                    return g;
            }
            return null;
        }

Usage Example

Пример #1
0
 public virtual void CheckForQualifiedRuleIssues(Grammar g, IList<GrammarAST> qualifiedRuleRefs)
 {
     foreach (GrammarAST dot in qualifiedRuleRefs)
     {
         GrammarAST grammar = (GrammarAST)dot.GetChild(0);
         GrammarAST rule = (GrammarAST)dot.GetChild(1);
         g.tool.Log("semantics", grammar.Text + "." + rule.Text);
         Grammar @delegate = g.GetImportedGrammar(grammar.Text);
         if (@delegate == null)
         {
             errMgr.GrammarError(ErrorType.NO_SUCH_GRAMMAR_SCOPE,
                                       g.fileName, grammar.Token, grammar.Text,
                                       rule.Text);
         }
         else
         {
             if (g.GetRule(grammar.Text, rule.Text) == null)
             {
                 errMgr.GrammarError(ErrorType.NO_SUCH_RULE_IN_SCOPE,
                                           g.fileName, rule.Token, grammar.Text,
                                           rule.Text);
             }
         }
     }
 }