List of usage examples for org.antlr.v4.runtime CommonTokenStream CommonTokenStream
public CommonTokenStream(TokenSource tokenSource)
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); }