Antlr4.Semantics.BasicSemanticChecks.CheckImport C# (CSharp) Method

CheckImport() private method

private CheckImport ( Antlr.Runtime.IToken importID ) : void
importID Antlr.Runtime.IToken
return void
        internal virtual void CheckImport(IToken importID)
        {
            Grammar @delegate = g.GetImportedGrammar(importID.Text);
            if (@delegate == null)
                return;
            IList<int> validDelegators;
            if (validImportTypes.TryGetValue(@delegate.Type, out validDelegators) && validDelegators != null && !validDelegators.Contains(g.Type))
            {
                g.tool.errMgr.GrammarError(ErrorType.INVALID_IMPORT,
                                           g.fileName,
                                           importID,
                                           g, @delegate);
            }
            if (g.IsCombined() &&
                 (@delegate.name.Equals(g.name + Grammar.GetGrammarTypeToFileNameSuffix(ANTLRParser.LEXER)) ||
                  @delegate.name.Equals(g.name + Grammar.GetGrammarTypeToFileNameSuffix(ANTLRParser.PARSER))))
            {
                g.tool.errMgr.GrammarError(ErrorType.IMPORT_NAME_CLASH,
                                           g.fileName,
                                           importID,
                                           g, @delegate);
            }
        }
    }