0
在我的DSL内有一些包(每个文件一个),导入,类和类成员。 说一个文件包含包含类c1的包p1,并且类c1包含成员m1。另一个文件包含软件包p2,其中包含具有成员m2的类c2。如何使用Xtext实现“公共静态”成员可见性?
我希望成员m1具有像使用public static
修改的Java成员那样的可见性。从包p2中,在包含p1之后,在类c2中,成员m2的值可以是对m1(m2 = c1.m1)的引用。
导入工作,但我只能看到导入的实体直接包含的元素(包括p1.c1。*会解决我的问题,但我不想这样做)是否有另一种解决方案这种类型范围界定?
请问你的语法看起来像 –
@ChristianDietrich在一个简化的例子,我想从其他引用类型其他包中的类。 包装: \t '包' 名称= QualifiedName的 \t进口+ =导入* \t类+ = *类; \t \t Class:'class'name = ID'{'elements + = Element * \t'}'; QualifiedName:ID('。'ID)*; QualifiedNameWithWildCard:QualifiedName('。*')?; 导入:'import'importedNamespace = QualifiedNameWithWildCard; 元素:类型|引用; 类型:'type'name = ID; 参考:type = [Type] name = ID; –