1

Treetop网站给出了以下我看不懂的解释

省略号 一个空字符串匹配任何位置并且不消耗任何输入。当您希望将单个符号视为序列的一部分时,它很有用,例如,当使用共享代码处理备用规则时。

规则 alts ( foo bar / baz '' ) { def value elements.map{|e| e.text_value } 结束 } 结束

何时将符号视为序列的一部分有用?任何人都可以提供一个有意义的例子吗?

4

1 回答 1

0

我对树顶不熟悉。从这个例子看来,( foo bar / baz '' )要么会产生['foo', 'bar']要么['baz', '']

如果你删除省略号,你会得到一个['foo', 'bar']或只是'baz'(没有序列/列表/数组)。

于 2012-02-29T00:56:32.947 回答