如何消除xtext中的重复项

时间:2017-06-09 08:53:52

标签: xtext

测试: 'Hai'name = ID *;

这是解析器规则。为此我们可以消除重复,即所有这些。 一切都在重复多次。现在有什么方法可以消除xtext中的重复

1 个答案:

答案 0 :(得分:0)

如果要检查本地文件中的重复项,您可以调整并重新运行工作流程,如下所示

validator = {
    composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
}

或编写手动验证(伪代码,只有1000种可能的变体之一)

public static val DUP_NAME = 'dupName'

@Check
def checkGreetingStartsWithCapital(Model model) {
    val names = newHashSet
    for (g : model.greetings) {
        if (names.add(g.name)) {
            error("duplicate" , g, MyDslPackage.Literals.GREETING__NAME, DUP_NAME)
        }
    }
}