Esempio n. 1
0
 /// <summary>
 /// Process xmlrpc request with a specific keyword map
 /// </summary>
 public void ProcessRequest(HttpListenerContext RequestContext, KeywordMap map)
 {
     if (map == null)
     {
         throw new Exception("No keyword map for xmlrpc process");
     }
     _map = map;
     base.ProcessRequest(RequestContext);
 }
Esempio n. 2
0
        internal bool IsKeyword(int tokenId)
        {
            if (!TokenIdMap.TryGetValue(tokenId, out var token))
            {
                return(false);
            }

            return(KeywordMap.ContainsKey(token.ToLower()));
        }
Esempio n. 3
0
        public bool IsKeyword(string value)
        {
            if (KeywordMap.TryGetValue(value.ToLower(), out var keywordId))
            {
                return(keywordId != ImpalaLexerInternal.IDENT);
            }

            return(false);
        }
Esempio n. 4
0
        public ImpalaDialect()
        {
            // initilize keywords
            KeywordMap = LoadKeywordMap();

            // Initilize tokenIdMap for error reporting
            TokenIdMap = new Dictionary <int, string>();

            foreach (var(key, value) in KeywordMap)
            {
                TokenIdMap[value] = key;
            }

            // add non-keyword tokens. Please keep this in the same order as they are used in this
            // file.
            TokenIdMap[Lexer.Eof] = "EOF";
            TokenIdMap[ImpalaLexerInternal.DOTDOTDOT]   = "...";
            TokenIdMap[ImpalaLexerInternal.COLON]       = ":";
            TokenIdMap[ImpalaLexerInternal.SEMICOLON]   = ";";
            TokenIdMap[ImpalaLexerInternal.COMMA]       = "COMMA";
            TokenIdMap[ImpalaLexerInternal.DOT]         = ".";
            TokenIdMap[ImpalaLexerInternal.STAR]        = "*";
            TokenIdMap[ImpalaLexerInternal.LPAREN]      = "(";
            TokenIdMap[ImpalaLexerInternal.RPAREN]      = ")";
            TokenIdMap[ImpalaLexerInternal.LBRACKET]    = "[";
            TokenIdMap[ImpalaLexerInternal.RBRACKET]    = "]";
            TokenIdMap[ImpalaLexerInternal.DIVIDE]      = "/";
            TokenIdMap[ImpalaLexerInternal.MOD]         = "%";
            TokenIdMap[ImpalaLexerInternal.ADD]         = "+";
            TokenIdMap[ImpalaLexerInternal.SUBTRACT]    = "-";
            TokenIdMap[ImpalaLexerInternal.BITAND]      = "&";
            TokenIdMap[ImpalaLexerInternal.BITOR]       = "|";
            TokenIdMap[ImpalaLexerInternal.BITXOR]      = "^";
            TokenIdMap[ImpalaLexerInternal.BITNOT]      = "~";
            TokenIdMap[ImpalaLexerInternal.EQUAL]       = "=";
            TokenIdMap[ImpalaLexerInternal.NOT]         = "!";
            TokenIdMap[ImpalaLexerInternal.LESSTHAN]    = "<";
            TokenIdMap[ImpalaLexerInternal.GREATERTHAN] = ">";
            TokenIdMap[ImpalaLexerInternal.UNMATCHED_STRING_LITERAL] = "UNMATCHED STRING LITERAL";
            TokenIdMap[ImpalaLexerInternal.NOTEQUAL]                  = "!=";
            TokenIdMap[ImpalaLexerInternal.INTEGER_LITERAL]           = "INTEGER LITERAL";
            TokenIdMap[ImpalaLexerInternal.NUMERIC_OVERFLOW]          = "NUMERIC OVERFLOW";
            TokenIdMap[ImpalaLexerInternal.DECIMAL_LITERAL]           = "DECIMAL LITERAL";
            TokenIdMap[ImpalaLexerInternal.EMPTY_IDENT]               = "EMPTY IDENTIFIER";
            TokenIdMap[ImpalaLexerInternal.IDENT]                     = "IDENTIFIER";
            TokenIdMap[ImpalaLexerInternal.STRING_LITERAL]            = "STRING LITERAL";
            TokenIdMap[ImpalaLexerInternal.COMMENTED_PLAN_HINT_START] = "COMMENTED_PLAN_HINT_START";
            TokenIdMap[ImpalaLexerInternal.COMMENTED_PLAN_HINT_END]   = "COMMENTED_PLAN_HINT_END";
            TokenIdMap[ImpalaLexerInternal.UNEXPECTED_CHAR]           = "Unexpected character";

            ReservedWords = new HashSet <string>(KeywordMap.Select(kv => kv.Key));
        }
 protected void LoadChannelGroups()
 {
     _channelGroupList = KeywordMap.RetrieveChannelGroups(_keyWord.IdKeyword);
 }