【发布时间】:2010-06-12 07:28:09
【问题描述】:
我有一个树解析器,它对我生成的 AST 进行语义分析 解析器。它有一个规则声明如下:
transitionDefinition throws WorkflowStateNotFoundException: /* ... */
这编译得很好并且匹配ANTLR Wiki的规则语法 但我的例外是永远 声明,以便 Java 编译器抱怨未声明的异常。
./tool/src/main/antlr3/org/antlr/grammar/v3/ANTLRv3.g 表明它正在构建 一棵树(但如果它是 ANTLR 的 v2 或 v3 语法,我实际上并不肯定 3.2正在使用):
throwsSpec
: 'throws' id ( ',' id )* -> ^('throws' id+)
;
我知道我可以将其设为运行时异常,但我想使用我的异常 等级制度。我做错了什么还是该语法应该有效?
【问题讨论】: