public override void Identifier([NotNull] string value)
        {
            Assert.ArgumentNotNull(value, nameof(value));

            base.Identifier(value);
            if (Token.Type != TokenType.Identifier)
            {
                return;
            }

            var tokenType = QueryAnalyzerManager.GetTokenType(value);

            if (tokenType >= 0)
            {
                Token.Type  = tokenType;
                Token.Value = value;
                return;
            }

            if (value == ";")
            {
                Token.Type = QueryAnalyzerTokenType.Semicolon;
                return;
            }

            Token.Type  = TokenType.Identifier;
            Token.Value = value;
        }
        private Opcode GetBatch()
        {
            var opcode = QueryAnalyzerManager.GetKeyword(parser, CurrentToken.Type);

            if (opcode != null)
            {
                return(opcode);
            }

            throw new ParseException("Keyword expected at position " + CurrentToken.Index + ".");
        }
示例#3
0
        public Opcode GetFrom()
        {
            Match(QueryAnalyzerTokenType.From, "\"from\" expected");

            var opcode = QueryAnalyzerManager.GetFrom(this, Token.Type);

            if (opcode == null)
            {
                opcode = GetQueries();
            }

            return(opcode);
        }
示例#4
0
 public IImportSource GetImportSource()
 {
     return(QueryAnalyzerManager.GetImportSource(this, Token.Type));
 }
示例#5
0
        public override void Initialize([NotNull] Type type)
        {
            Assert.ArgumentNotNull(type, nameof(type));

            QueryAnalyzerManager.LoadType(type, this);
        }