1

如您所知,可以制作一个布尔功能,例如

tokenExist ?= 'TOKEN'?

我怎么知道消耗了多个这样的令牌:

tokensExist ?= ('TOKENONE' 'TOKENTWO')?

这在 Xtext 中无效。

我当前的解决方案方法如下所示:

(tokensExist ?='TOKENONE' 'TOKENTWO')?

有效,但并未真正表达其含义

有任何想法吗?

4

1 回答 1

1

你的方法没问题。您将序列中第一个(或任何其他)标记的存在保存到tokensExist布尔字段。解析器保证其他标记的存在和顺序。

于 2013-03-21T14:23:05.667 回答