【发布时间】:2009-06-11 17:59:31
【问题描述】:
我有一个 ANTLR 语法,并且正在用我的语言定义一个允许可选参数的函数。如何检查代码生成块中是否传入了可选参数?
我基本上是在寻找语法来做这个假设的树语法语句:
myFunc returns [int retval] : 'myFunc' arg1=number arg2=string?
{
// Check if arg2 exists.
if (/* arg2 exists */) { $retval = $arg1.value + 10; }
else { $retval = $arg1.value; }
}
非常感谢任何关于文档的建议或指针!
【问题讨论】:
-
对于那些感兴趣的人,我找到的关于 ANTLR3 文档的最佳资源在这里:java.ociweb.com/mark/programming/ANTLR3/ANTLR3.pdf
标签: code-generation antlr grammar