NextToken() public method

public NextToken ( ) : bool
return bool
コード例 #1
0
        private Query ParseBinaryOr()
        {
            //BinaryOr        ==>  BinaryAnd | BinaryOr OR BinaryAnd
            var queries = new List <Query>();

            queries.Add(ParseBinaryAnd());
            while (_lexer.CurrentToken == SnLucLexer.Token.Or)
            {
                _lexer.NextToken();
                queries.Add(ParseBinaryAnd());
            }
            if (queries.Count == 1)
            {
                return(queries[0]);
            }
            var boolq = new BooleanQuery();

            foreach (var query in queries)
            {
                AddBooleanClause(boolq, query, BooleanClause.Occur.SHOULD);
            }
            return(boolq);
        }
コード例 #2
0
ファイル: LexerTest.cs プロジェクト: maxpavlov/FlexNet
        private IEnumerable<TokenChecker> GetTokens(string source)
        {
            var lexer = new SnLucLexer(source);
            var tokens = new List<TokenChecker>();
            do
            {
                //tokens.Add(new TokenChecker { Token = lexer.CurrentToken, Value = lexer.StringValue });
                tokens.Add(new TokenChecker { Token = lexer.CurrentToken, Value = lexer.StringValue });
            }
            while (lexer.NextToken());

            return tokens;
        }