Antlr4.Automata.LexerATNFactory.GetChannelConstantValue C# (CSharp) Method

GetChannelConstantValue() private method

private GetChannelConstantValue ( [ channelName, [ token ) : int?
channelName [
token [
return int?
        private int? GetChannelConstantValue([Nullable] string channelName, [Nullable] IToken token)
        {
            if (channelName == null)
            {
                return null;
            }

            if (channelName.Equals("HIDDEN"))
            {
                return Lexer.Hidden;
            }
            if (channelName.Equals("DEFAULT_TOKEN_CHANNEL"))
            {
                return Lexer.DefaultTokenChannel;
            }
            if (COMMON_CONSTANTS.ContainsKey(channelName))
            {
                g.tool.errMgr.GrammarError(ErrorType.CHANNEL_CONFLICTS_WITH_COMMON_CONSTANTS, g.fileName, token, token.Text);
                return null;
            }

            int channelValue = g.GetChannelValue(channelName);
            if (channelValue >= Antlr4.Runtime.TokenConstants.MinUserChannelValue)
            {
                return channelValue;
            }

            int result;
            if (int.TryParse(channelName, out result))
                return result;

            g.tool.errMgr.GrammarError(ErrorType.CONSTANT_VALUE_IS_NOT_A_RECOGNIZED_CHANNEL_NAME, g.fileName, token, token.Text);
            return null;
        }
    }