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:com.globalforge.infix.api.InfixActions.java

License:Open Source License

/**
 * Initialize the engine and runs the engine given a rule or set of rules.
 * @param ruleInput The list of rules// w ww  .  java 2s. c  o  m
 * @throws IOException When the rule input can not be read.
 */
public InfixActions(InputStream ruleInput) throws IOException {
    input = new ANTLRInputStream(ruleInput);
    lexer = new FixRulesLexer(input);
    lexer.removeErrorListeners();
    lexer.addErrorListener(FixRulesLexerErrorListener.INSTANCE);
    tokens = new CommonTokenStream(lexer);
    parser = new FixRulesParser(tokens);
    parser.removeErrorListeners();
    parser.addErrorListener(FixRulesParserErrorListener.INSTANCE);
    parser.setErrorHandler(new FixRulesErrorStrategy());
    parseRules();
}

From source file:com.globalforge.infix.FixDataDictEngine.java

License:Open Source License

/**
 * The program needs to know where to locate the xml files
 * /*from   w ww.ja  v a2  s  .c  o  m*/
 * @throws Exception xml files can not be loaded.
 */
private void initInputStreams() throws Exception {
    String CONFIG_DIR = System.getenv("CONFIG_DIR");
    if (CONFIG_DIR != null) {
        logger.info("CONFIG_DIR is an ENV variable: {}", CONFIG_DIR);
    } else {
        CONFIG_DIR = System.getProperty("CONFIG_DIR");
        if (CONFIG_DIR != null) {
            logger.info("CONFIG_DIR is a System property: {}", CONFIG_DIR);
        } else {
            CONFIG_DIR = null;
        }
    }
    if (CONFIG_DIR == null) {
        CONFIG_DIR = System.getProperty("user.dir");
        logger.warn("No CONFIG_DIR provided.  Output stream is user.dir: {}", CONFIG_DIR);
    } else {
        String inFileName = CONFIG_DIR + System.getProperty("file.separator") + fixVersion + "Mgr.xml";
        InputStream in = new FileInputStream(inFileName);
        input = new ANTLRInputStream(in);
        lexer = new XMLLexer(input);
        tokens = new CommonTokenStream(lexer);
        parser = new XMLParser(tokens);
    }
}

From source file:com.goldmansachs.kata2go.tools.parser.JavaSourceParser.java

License:Apache License

public void parse(String javaSource) {
    CharStream stream = CharStreams.fromString(javaSource);
    JavaLexer lexer = new JavaLexer(stream);
    CommonTokenStream tokens = new CommonTokenStream(lexer);
    JavaParser parser = new JavaParser(tokens);
    JavaParser.CompilationUnitContext tree = parser.compilationUnit();

    this.extractor = new Listener(javaSource);
    ParseTreeWalker.DEFAULT.walk(extractor, tree);
}

From source file:com.googlecode.cqengine.query.parser.cqn.CQNParser.java

License:Apache License

@Override
public ParseResult<O> parse(String query) {
    try {//  w ww . j a  va  2 s .  c  o m
        if (query == null) {
            throw new IllegalArgumentException("Query was null");
        }
        CQNGrammarLexer lexer = new CQNGrammarLexer(new ANTLRInputStream(query));
        lexer.removeErrorListeners();
        lexer.addErrorListener(SYNTAX_ERROR_LISTENER);

        CommonTokenStream tokens = new CommonTokenStream(lexer);

        CQNGrammarParser parser = new CQNGrammarParser(tokens);
        parser.removeErrorListeners();
        parser.addErrorListener(SYNTAX_ERROR_LISTENER);

        CQNGrammarParser.StartContext queryContext = parser.start();

        ParseTreeWalker walker = new ParseTreeWalker();
        CQNAntlrListener<O> listener = new CQNAntlrListener<O>(this);
        walker.walk(listener, queryContext);
        return new ParseResult<O>(listener.getParsedQuery(), listener.getQueryOptions());
    } catch (InvalidQueryException e) {
        throw e;
    } catch (Exception e) {
        throw new InvalidQueryException("Failed to parse query", e);
    }
}

From source file:com.googlecode.cqengine.query.parser.cqnative.CQNativeParser.java

License:Apache License

@Override
public Query<O> parse(String query) {
    try {//from w w  w  .j av a2  s  .  c om
        if (query == null) {
            throw new IllegalArgumentException("Query was null");
        }
        CQEngineNativeLexer lexer = new CQEngineNativeLexer(new ANTLRInputStream(query));
        lexer.removeErrorListeners();
        lexer.addErrorListener(ThrowingErrorListener.INSTANCE);

        // Get a list of matched tokens
        CommonTokenStream tokens = new CommonTokenStream(lexer);

        // Pass the tokens to the parser
        CQEngineNativeParser parser = new CQEngineNativeParser(tokens);
        parser.removeErrorListeners();
        parser.addErrorListener(ThrowingErrorListener.INSTANCE);

        // Specify our entry point
        CQEngineNativeParser.StartContext queryContext = parser.start();

        // Walk it and attach our listener
        ParseTreeWalker walker = new ParseTreeWalker();
        NativeQueryAntlrListener<O> listener = new NativeQueryAntlrListener<O>(this);
        walker.walk(listener, queryContext);
        return listener.getParsedQuery();
    } catch (InvalidQueryException e) {
        throw e;
    } catch (Exception e) {
        throw new InvalidQueryException("Failed to parse query", e);
    }

}

From source file:com.googlecode.cqengine.query.parser.sql.SQLParser.java

License:Apache License

@Override
public ParseResult<O> parse(String query) {
    try {//from w w w  . j  av a2s.co m
        if (query == null) {
            throw new IllegalArgumentException("Query was null");
        }
        SQLGrammarLexer lexer = new SQLGrammarLexer(new ANTLRInputStream(query));
        lexer.removeErrorListeners();
        lexer.addErrorListener(SYNTAX_ERROR_LISTENER);

        CommonTokenStream tokens = new CommonTokenStream(lexer);

        SQLGrammarParser parser = new SQLGrammarParser(tokens);
        parser.removeErrorListeners();
        parser.addErrorListener(SYNTAX_ERROR_LISTENER);

        SQLGrammarParser.StartContext queryContext = parser.start();

        ParseTreeWalker walker = new ParseTreeWalker();
        SQLAntlrListener<O> listener = new SQLAntlrListener<O>(this);
        walker.walk(listener, queryContext);
        return new ParseResult<O>(listener.getParsedQuery(), listener.getQueryOptions());
    } catch (InvalidQueryException e) {
        throw e;
    } catch (Exception e) {
        throw new InvalidQueryException("Failed to parse query", e);
    }
}

From source file:com.hpcloud.mon.common.model.alarm.AlarmExpression.java

License:Apache License

/**
 * Creates an AlarmExpression for the {@code expression} string.
 * //w w  w  . jav a2s  .c  o m
 * @throws IllegalArgumentException if the {@code expression} is invalid
 */
public AlarmExpression(String expression) {
    this.expression = expression;
    AlarmExpressionParser parser = new AlarmExpressionParser(
            new CommonTokenStream(new AlarmExpressionLexer(new ANTLRInputStream(expression))));
    parser.removeErrorListeners();
    parser.addErrorListener(new AlarmExpressionErrorListener());
    parser.setBuildParseTree(true);
    ParserRuleContext tree = parser.start();
    AlarmSubExpressionListener listener = new AlarmSubExpressionListener(false);
    ParseTreeWalker walker = new ParseTreeWalker();
    walker.walk(listener, tree);
    elements = listener.getElements();
}

From source file:com.hpcloud.mon.common.model.alarm.AlarmSubExpression.java

License:Apache License

/**
 * Returns an AlarmSubExpression for the {@code expression} string.
 * //from   w w  w. j a  va  2s  .c  o  m
 * @throws IllegalArgumentException if the {@code expression} is invalid
 */
@JsonCreator
public static AlarmSubExpression of(String expression) {
    AlarmExpressionParser parser = new AlarmExpressionParser(
            new CommonTokenStream(new AlarmExpressionLexer(new ANTLRInputStream(expression))));
    parser.removeErrorListeners();
    parser.addErrorListener(new AlarmExpressionErrorListener());
    parser.setBuildParseTree(true);
    ParserRuleContext tree = parser.start();
    AlarmSubExpressionListener listener = new AlarmSubExpressionListener(true);
    ParseTreeWalker walker = new ParseTreeWalker();
    walker.walk(listener, tree);
    return (AlarmSubExpression) listener.getElements().get(0);
}

From source file:com.huawei.streaming.cql.semanticanalyzer.parser.ApplicationParser.java

License:Apache License

/**
 * {@inheritDoc}/*from   w w  w.  jav a2s . c o m*/
 */
@Override
public ParseContext parse(String cql) throws ParseException {
    LOG.info("start to parse cql : {}", cql);

    CQLErrorListener errorListener = new CQLErrorListener();

    CQLLexer lexer = new CQLLexer(new ANTLRIgnoreCaseStringStream(cql));
    lexer.removeErrorListeners();
    lexer.addErrorListener(errorListener);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    CQLParser parser = new CQLParser(tokens);

    CQLErrorStrategy errorHandler = new CQLErrorStrategy();
    parser.setErrorHandler(errorHandler);

    parser.removeErrorListeners();
    parser.addErrorListener(errorListener);

    CQLParser.StatementContext tree = parser.statement();

    if (errorListener.getRecException() != null) {
        errorListener.getRecException().setCql(cql);
        throw errorListener.getRecException();
    }

    LOG.info("Parse Completed");
    ApplicationVisitor visitor = new ApplicationVisitor();
    return visitor.visit(tree);
}

From source file:com.huawei.streaming.cql.semanticanalyzer.parser.DataSourceArgumentsParser.java

License:Apache License

/**
 * {@inheritDoc}//from w  w w  .  jav a  2  s  .  c  o  m
 */
@Override
public ParseContext parse(String cql) throws ParseException {
    LOG.info("start to parse cql : {}", cql);
    CQLErrorListener errorListener = new CQLErrorListener();

    CQLLexer lexer = new CQLLexer(new ANTLRIgnoreCaseStringStream(cql));
    lexer.removeErrorListeners();
    lexer.addErrorListener(errorListener);

    CommonTokenStream tokens = new CommonTokenStream(lexer);
    CQLParser parser = new CQLParser(tokens);

    CQLErrorStrategy errorHandler = new CQLErrorStrategy();
    parser.setErrorHandler(errorHandler);

    parser.removeErrorListeners();
    parser.addErrorListener(errorListener);

    ParserRuleContext tree = parser.datasourceQueryArguments();

    if (errorListener.getRecException() != null) {
        errorListener.getRecException().setCql(cql);
        throw errorListener.getRecException();
    }

    LOG.info("Parse Completed");
    DatasourceBodyVisitor visitor = new DatasourceBodyVisitor();
    return visitor.visit(tree);
}