Exemple #1
0
 private void DiscardToken()
 {
     _lookaheadFirst = _lookaheadSecond.Clone();
     
     if (_tokenSequence.Any())
         _lookaheadSecond = _tokenSequence.Pop();
     else
         _lookaheadSecond = new LqlToken(TokenType.SequenceTerminator, string.Empty);
 }
Exemple #2
0
        public SearchRequest Parse(IList<LqlToken> tokens)
        {
            LoadSequenceStack(tokens);
            _lookaheadFirst = _tokenSequence.Pop();
            _lookaheadSecond = _tokenSequence.Pop();
            _searchRequest = new SearchRequest();

            Match();

            DiscardToken(TokenType.SequenceTerminator);

            return _searchRequest;
        }
Exemple #3
0
 private bool IsOperator(LqlToken token)
 {
     return token.TokenType == TokenType.Equals
            || token.TokenType == TokenType.NotEquals
            || token.TokenType == TokenType.Like
            || token.TokenType == TokenType.NotLike;
 }
Exemple #4
0
 private bool IsObject(LqlToken token)
 {
     return token.TokenType == TokenType.Application
            || token.TokenType == TokenType.ExceptionType
            || token.TokenType == TokenType.Fingerprint
            || token.TokenType == TokenType.Message
            || token.TokenType == TokenType.StackFrame;
 }
Exemple #5
0
 private LqlOperator GetOperator(LqlToken token)
 {
     switch (token.TokenType)
     {
         case TokenType.Equals:
             return LqlOperator.Equals;
         case TokenType.NotEquals:
             return LqlOperator.NotEquals;
         case TokenType.Like:
             return LqlOperator.Like;
         case TokenType.NotLike:
             return LqlOperator.NotLike;
         case TokenType.In:
             return LqlOperator.In;
         case TokenType.NotIn:
             return LqlOperator.NotIn;
         default:
             throw new LqlParserException("Expected =, !=, LIKE, NOT LIKE, IN, NOT IN but found: " + token.Value);
     }
 }
Exemple #6
0
 private LqlObject GetObject(LqlToken token)
 {
     switch (token.TokenType)
     {
         case TokenType.Application:
             return LqlObject.Application;
         case TokenType.ExceptionType:
             return LqlObject.ExceptionType;
         case TokenType.Fingerprint:
             return LqlObject.Fingerprint;
         case TokenType.Message:
             return LqlObject.Message;
         case TokenType.StackFrame:
             return LqlObject.StackFrame;
         default:
             throw new LqlParserException("Expected app, ex, msg, sf or fingerprint but found: " + token.Value);
     }
 }