在我的 DSL 中,我有一个 cunstruct,例如:
myInstance.abc == 2 -> [...]
template myTemplate
const int abc;
endtemplate
instance myInstance of myTemplate with abc:=2;
实例的创建可以在代码中的任何位置创建,因为实例是静态的并且不会改变。曾经。所以我希望代码中实例的放置无关紧要。
但是在范围界定期间,第一行将首先提供,因此我需要预先将 myInstance 链接到 myTemplate。但是链接还没有到达代码的那部分。有没有办法从我的自定义 ScopeProvider 中请求链接特定节点?
编辑:诸如
SomeLibrary.ensureLinked((EObject)templateInstance);