为了最好地说明我的要求,请考虑具有类和接口的类似Java的语言。
此语言要求所有类都在扩展名为“.classdef”的文件中,并且所有接口必须位于扩展名为“.intdef”的文件中。这些文件中的根语法元素会有所不同。
在接口文件中,它的根元素为Interface
,可以包含AbstractMethod
和StaticConstant
的实例。
“.classdef”的根语法元素为Class
,可能包含MethodDeclaration
,MemberVariable
,StaticConstant
等实例。
根据单个语法文件,xtext是否可以根据文件扩展名具有不同的根语法元素?我必须把它分成两个相关的语法是没有意义的。我不想为不同的语法使用两个eclipse插件/包。
以上只是一个例子。实际上,我有两种不同的文件类型......但两种文件类型之间支持的两组成员几乎完全重叠。
理论上,我可以在验证器中实现它,以防止您在其中一个文件中使用省略的类型。但是,我还需要过滤内容助手等建议。
答案 0 :(得分:1)
如何将多个dsls / languages与继承结合使用,例如