private static HDLExpression parseExpressionStream(CharStream input, final Set<Problem> syntaxProblems) {
final PSHDLLangLexer lexer = new PSHDLLangLexer(input);
final CommonTokenStream tokens = new CommonTokenStream(lexer);
final ANTLRErrorListener parserListener = new SyntaxErrorCollector(tokens, syntaxProblems);
final PSHDLLang parser = new PSHDLLang(tokens);
parser.removeErrorListeners();
parser.addErrorListener(parserListener);
lexer.removeErrorListeners();
lexer.addErrorListener(parserListener);
final PsExpressionContext psExpression = parser.psExpression();
if (syntaxProblems.size() == 0) {
final HDLExpression hdl = ParserToModelExtension.toHDLExpression(tokens, psExpression);
return hdl;
}
return null;
}
PSHDLParser.java 文件源码
java
阅读 19
收藏 0
点赞 0
评论 0
项目:org.pshdl
作者:
评论列表
文章目录