public static void parseSqlStream(InputStream inputStream, String charsetName,
String parsedObjectName, List<AntlrError> errors,IProgressMonitor mon, int monitoringLevel,
Collection<SQLParserBaseListener> listeners) throws IOException, InterruptedException {
SQLParser parser = makeBasicParser(SQLParser.class, inputStream, charsetName, parsedObjectName, errors);
parser.addParseListener(new CustomParseTreeListener(
monitoringLevel, mon == null ? new NullProgressMonitor() : mon));
try {
SqlContext ctx = parser.sql();
for (SQLParserBaseListener listener : listeners) {
ParseTreeWalker.DEFAULT.walk(listener, ctx);
}
} catch (MonitorCancelledRuntimeException mcre){
throw new InterruptedException();
} catch (UnresolvedReferenceException ex) {
errors.add(CustomSQLParserListener.handleUnresolvedReference(ex));
}
}
AntlrParser.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:pgcodekeeper
作者:
评论列表
文章目录