2013-03-25 51 views
1

我使用的Xtext 2.3.1XTEXT注射或接入RootModel到ScopeProvider

在我的ScopeProvider我想利用當前分析rootModel。 如何做?我可以注入RootModel還是可以使用上下文?

public class MyLanguageScopeProvider extends AbstractDeclarativeScopeProvider { 

    public IScope scope_MyLangElement_ref(EObject context, EReference reference) { 
     HashMap<QualifiedName, EObject> elements = new HashMap<QualifiedName, EObject>(); 

     // access model here, sth like: 
     RootModel rootModel = // .... 

     return new MapBasedScope(elements); 
    } 

} 

回答

0

EcoreUtil.getRootContainer(context)應該做的伎倆。

+0

謝謝Sebastion。 在我的安裝中它是:'EcoreUtil.getRootContainer(context)'。 – 2013-03-26 11:22:20

+0

謝謝,我更新了答案。 – 2013-04-02 05:46:21