【发布时间】:2012-10-24 20:27:27
【问题描述】:
我有一个树语法,部分语法如下所示
transitions
:'transitions' '=' INT ('(' INT ',' INT ')') + ';' -> ^(TRANSITIONS INT INT INT*)
;
这里是树解析器语法的相应部分,
transitions
:^(TRANSITIONS INT INT INT*)
{System.out.println("");}
;
我使用了 + rewrite 规则,这基本上是 repitition。在上面的语法中,用户输入最少 3 个整数值,比如说 一种可能的输入,
transitions 1 (5,0)
第二个可能的输入
transitions 2 (5,0) (5,1)
第三种可能的输入
transitions 3 (5,0) (5,1) (5,2)
等等。
第一个整数决定了有多少对整数。问题是如何在解析器语法中访问这些整数输入,以及如何在上面的 println 语句中打印它们?
我写的完整语法请参考我的问题ANTLR java test file can't create object of tree grammar。
【问题讨论】:
标签: java antlr dsl parser-generator