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; –