Example usage for org.antlr.v4.runtime CommonTokenStream CommonTokenStream

List of usage examples for org.antlr.v4.runtime CommonTokenStream CommonTokenStream

Introduction

In this page you can find the example usage for org.antlr.v4.runtime CommonTokenStream CommonTokenStream.

Prototype

public CommonTokenStream(TokenSource tokenSource) 

Source Link

Document

Constructs a new CommonTokenStream using the specified token source and the default token channel ( Token#DEFAULT_CHANNEL ).

Usage

From source file:io.siddhi.query.compiler.SiddhiCompiler.java

License:Open Source License

public static Query parseQuery(String source) throws SiddhiParserException {

    ANTLRInputStream input = new ANTLRInputStream(source);
    SiddhiQLLexer lexer = new SiddhiQLLexer(input);
    lexer.removeErrorListeners();/*from www.j a  v  a  2s. c  o m*/
    lexer.addErrorListener(SiddhiErrorListener.INSTANCE);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    SiddhiQLParser parser = new SiddhiQLParser(tokens);
    parser.removeErrorListeners();
    parser.addErrorListener(SiddhiErrorListener.INSTANCE);
    ParseTree tree = parser.query_final();

    SiddhiQLVisitor eval = new SiddhiQLBaseVisitorImpl();
    return (Query) eval.visit(tree);
}

From source file:io.siddhi.query.compiler.SiddhiCompiler.java

License:Open Source License

public static FunctionDefinition parseFunctionDefinition(String source) throws SiddhiParserException {
    ANTLRInputStream input = new ANTLRInputStream(source);
    SiddhiQLLexer lexer = new SiddhiQLLexer(input);
    lexer.removeErrorListeners();/* w  ww. j ava2 s  . c  o  m*/
    lexer.addErrorListener(SiddhiErrorListener.INSTANCE);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    SiddhiQLParser parser = new SiddhiQLParser(tokens);
    parser.removeErrorListeners();
    parser.addErrorListener(SiddhiErrorListener.INSTANCE);
    ParseTree tree = parser.definition_function_final();

    SiddhiQLVisitor eval = new SiddhiQLBaseVisitorImpl();
    return (FunctionDefinition) eval.visit(tree);
}

From source file:io.siddhi.query.compiler.SiddhiCompiler.java

License:Open Source License

public static TimeConstant parseTimeConstantDefinition(String source) throws SiddhiParserException {
    ANTLRInputStream input = new ANTLRInputStream(source);
    SiddhiQLLexer lexer = new SiddhiQLLexer(input);
    lexer.removeErrorListeners();//from  w w  w.  j  a  va 2s  . c o m
    lexer.addErrorListener(SiddhiErrorListener.INSTANCE);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    SiddhiQLParser parser = new SiddhiQLParser(tokens);
    parser.removeErrorListeners();
    parser.addErrorListener(SiddhiErrorListener.INSTANCE);
    ParseTree tree = parser.time_value();

    SiddhiQLVisitor eval = new SiddhiQLBaseVisitorImpl();
    return (TimeConstant) eval.visit(tree);
}

From source file:io.siddhi.query.compiler.SiddhiCompiler.java

License:Open Source License

public static StoreQuery parseStoreQuery(String storeQuery) throws SiddhiParserException {

    ANTLRInputStream input = new ANTLRInputStream(storeQuery);
    SiddhiQLLexer lexer = new SiddhiQLLexer(input);
    lexer.removeErrorListeners();/*from  w  w  w. ja  v  a  2  s.c  o  m*/
    lexer.addErrorListener(SiddhiErrorListener.INSTANCE);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    SiddhiQLParser parser = new SiddhiQLParser(tokens);
    parser.removeErrorListeners();
    parser.addErrorListener(SiddhiErrorListener.INSTANCE);
    ParseTree tree = parser.store_query_final();

    SiddhiQLVisitor eval = new SiddhiQLBaseVisitorImpl();
    return (StoreQuery) eval.visit(tree);
}

From source file:io.smartspaces.expression.language.ssel.SselExpressionEvaluator.java

License:Apache License

/**
 * Evaluate an SSEL expression./*from   www  . j ava  2  s  . c o  m*/
 * 
 * @param expression
 *          the expression
 * 
 * @return the value
 */
private Object evaluateSselExpression(String expression) {
    ANTLRInputStream inputStream = new ANTLRInputStream(expression);

    SmartspacesexpressionlanguageParserLexer lexer = new SmartspacesexpressionlanguageParserLexer(inputStream);
    TokenStream tokenStream = new CommonTokenStream(lexer);
    SmartspacesexpressionlanguageParserParser parser = new SmartspacesexpressionlanguageParserParser(
            tokenStream);

    ExpressionContext expressionContext = parser.expression();

    if (expressionContext.exception == null) {
        ExpressionVisitor visitor = new ExpressionVisitor();
        Object value = visitor.visit(expressionContext);
        return value.toString();
    } else {
        throw new SmartSpacesException("Could not parse expression " + expression, expressionContext.exception);
    }
}

From source file:io.viewserver.expression.AntlrExpressionParser.java

License:Apache License

@Override
public <TResult> TResult parse(String expressionText, ParseTreeVisitor<TResult> parseTreeVisitor,
        BitSet columnsUsed) {// w  w w.j av  a2s. com
    ExpressionLexer lexer = new ExpressionLexer(new ANTLRInputStream(expressionText));
    ExpressionParser parser = new ExpressionParser(new CommonTokenStream(lexer));
    ExpressionParser.ParseContext parse = parser.parse();
    TResult result = parseTreeVisitor.visit(parse);
    if (columnsUsed != null && parseTreeVisitor instanceof IColumnTrackingExpressionVisitor) {
        columnsUsed.or(((IColumnTrackingExpressionVisitor) parseTreeVisitor).getColumnsUsed());
    }
    return result;
}

From source file:it.cnr.istc.core.Core.java

License:Open Source License

public boolean read(String script) {
    parser = new oRatioParser(new CommonTokenStream(new oRatioLexer(new ANTLRInputStream(script))));
    oRatioParser.Compilation_unitContext cu = parser.compilation_unit();
    ParseTreeWalker.DEFAULT.walk(new TypeDeclarationListener(this), cu);
    ParseTreeWalker.DEFAULT.walk(new TypeRefinementListener(this), cu);
    if (!new StatementVisitor(this, this).visit(cu)) {
        return false;
    }//from   w w w .j av  a 2s  .  c o m
    parser = null;
    return true;
}

From source file:it.cnr.istc.core.Core.java

License:Open Source License

public boolean read(File... files) throws IOException {
    List<File> fs = new ArrayList<>(files.length);
    for (File file : files) {
        fs.addAll(Files.walk(Paths.get(file.toURI())).filter(Files::isRegularFile).map(path -> path.toFile())
                .collect(Collectors.toList()));
    }/* ww  w.j  a v  a2s .c  o m*/
    Collection<CodeSnippet> snippets = new ArrayList<>(fs.size());
    for (File f : fs) {
        oRatioParser c_parser = new oRatioParser(
                new CommonTokenStream(new oRatioLexer(new ANTLRFileStream(f.getPath()))));
        oRatioParser.Compilation_unitContext context = c_parser.compilation_unit();
        snippets.add(new CodeSnippet(f, c_parser, context));
    }
    for (CodeSnippet snippet : snippets) {
        parser = snippet.parser;
        ParseTreeWalker.DEFAULT.walk(new TypeDeclarationListener(this), snippet.context);
        ParseTreeWalker.DEFAULT.walk(new TypeRefinementListener(this), snippet.context);
        if (!new StatementVisitor(this, this).visit(snippet.context)) {
            return false;
        }
        parser = null;
    }
    return true;
}

From source file:it.cnr.istc.iloc.ddl.LanguageParser.java

License:Open Source License

public void read(String script) {
    DDLParser parser = new DDLParser(new CommonTokenStream(new DDLLexer(new ANTLRInputStream(script))));
    parser.addErrorListener(error_listener);
    DDLParser.Compilation_unitContext compilation_unit = parser.compilation_unit();
    scopes.put(compilation_unit, solver);

    WALKER.walk(new TypeDeclaration(solver, parser, scopes), compilation_unit);
    WALKER.walk(new TypeRefinement(solver, parser, scopes), compilation_unit);
    WALKER.walk(new Preprocessing(solver, parser, scopes), compilation_unit);
    compilation_unit.statement().forEach(statementContext -> {
        WALKER.walk(new StatementTesting(solver, parser, scopes), statementContext);
    });//from w  w  w  . j  a  va  2  s  .  c  om

    StatementExecutor statementExecutor = new StatementExecutor(solver, parser, scopes, solver);
    compilation_unit.statement().forEach(statement -> {
        statementExecutor.visit(statement);
    });
}

From source file:it.cnr.istc.iloc.ddl.LanguageParser.java

License:Open Source License

public void read(File... files) throws IOException {
    List<File> fs = new ArrayList<>(files.length);
    for (File file : files) {
        fs.addAll(Files.walk(Paths.get(file.toURI())).filter(Files::isRegularFile).map(path -> path.toFile())
                .collect(Collectors.toList()));
    }// www.j  a  v  a 2  s.c o m
    Collection<CodeSnippet> snippets = new ArrayList<>(fs.size());
    for (File f : fs) {
        DDLParser parser = new DDLParser(new CommonTokenStream(new DDLLexer(new ANTLRFileStream(f.getPath()))));
        parser.addErrorListener(error_listener);
        DDLParser.Compilation_unitContext context = parser.compilation_unit();
        scopes.put(context, solver);
        snippets.add(new CodeSnippet(f, parser, context));
    }

    snippets.forEach(snippet -> {
        WALKER.walk(new TypeDeclaration(solver, snippet.parser, scopes), snippet.context);
    });
    snippets.forEach(snippet -> {
        WALKER.walk(new TypeRefinement(solver, snippet.parser, scopes), snippet.context);
    });
    snippets.forEach(snippet -> {
        WALKER.walk(new Preprocessing(solver, snippet.parser, scopes), snippet.context);
    });
    snippets.forEach(snippet -> {
        snippet.context.statement().forEach(statementContext -> {
            WALKER.walk(new StatementTesting(solver, snippet.parser, scopes), statementContext);
        });
    });
    snippets.forEach(snippet -> {
        StatementExecutor statementExecutor = new StatementExecutor(solver, snippet.parser, scopes, solver);
        snippet.context.statement().forEach(statement -> {
            statementExecutor.visit(statement);
        });
    });
}