我刚开始研究ANTLR
,并注意到ANTLRWorks 1.5
生成了 Java 解析器文件,但抛出声明不完整。
语法文件:
grammar ASTDemo;
options {
output=AST;
}
parse
: orexpr+
| andexpr+
| TAG ' ' parens
| TAG (parens andexpr)+
| together+
;
parens
: '(' TAG ')';
andexpr
: TAG (AND^ TAG)+;
orexpr
: '[' TAG (OR^ TAG)+ ']';
together
: TAG (' '^ TAG)*
;
TAG : ('FOO' | 'BAR');
OR : '|';
AND : ': ';
WS : (' ')+;
这是包含不完整 throws 语句的示例行
public final ASTDemoParser.parse_return parse() throws {
当前用于启动的 JDK 版本ANTLRWorks
是 1.6x 以前有人见过吗?
不幸的是,这个编译错误ANTLRWorks
不允许我在其中调试我的语法。每次我想测试时,我都被迫手动修复文件。