diff options
Diffstat (limited to 'rba.tool.editor/src/rba/tool/editor/scoping/RBAModelExpressionScope.xtend')
-rw-r--r-- | rba.tool.editor/src/rba/tool/editor/scoping/RBAModelExpressionScope.xtend | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/rba.tool.editor/src/rba/tool/editor/scoping/RBAModelExpressionScope.xtend b/rba.tool.editor/src/rba/tool/editor/scoping/RBAModelExpressionScope.xtend new file mode 100644 index 0000000..90bdf3b --- /dev/null +++ b/rba.tool.editor/src/rba/tool/editor/scoping/RBAModelExpressionScope.xtend @@ -0,0 +1,22 @@ +package rba.tool.editor.scoping + +import com.google.inject.Inject +import com.google.inject.Singleton +import org.eclipse.emf.ecore.EObject +import org.eclipse.xtext.scoping.IScope +import rba.tool.editor.scoping.internal.RBAModelMemberFieldScopes +import rba.tool.editor.scoping.internal.RBAModelMemberOperationScopes + +@Singleton +class RBAModelExpressionScope implements IExpressionScope { + + @Inject private RBAModelMemberFieldScopes filedScopeCreator; + @Inject private RBAModelMemberOperationScopes operationScopeCreator; + + override getFeatureScope(EObject model, IExpressionScope.Anchor anchor) { + var IScope result = filedScopeCreator.createFeatureScope(model); + result = operationScopeCreator.createFeatureScope(model, anchor, result); + return result; + } + +} |