org.eclipse.ocl.examples.xtext.base.scope
Interface ScopeAdapter

Type Parameters:
T -
All Superinterfaces:
org.eclipse.emf.common.notify.Adapter, org.eclipse.emf.common.notify.Adapter.Internal, TypeManagedAdapter
All Known Subinterfaces:
RootCSScopeAdapter, RootScopeAdapter, ScopeCSAdapter
All Known Implementing Classes:
AbstractPivotScopeAdapter, AbstractRootCSScopeAdapter, AbstractScopeAdapter, BaseCSScopeAdapter, ClassCSScopeAdapter, ClassifierContextScopeAdapter, ClassScopeAdapter, CompleteOCLDocumentScopeAdapter, ConstraintCSScopeAdapter, ContextCSScopeAdapter, DataTypeCSScopeAdapter, DefaultScopeAdapter, ElementCSScopeAdapter, EmptyCSScopeAdapter, EmptyScopeAdapter, EnumCSScopeAdapter, EnumerationScopeAdapter, EssentialOCLCSScopeAdapter, ExpCSScopeAdapter, ExpressionInOclScopeAdapter, ExpressionScopeAdapter, ExpSpecificationCSScopeAdapter, ImportScopeAdapter, IncludeScopeAdapter, IterateExpScopeAdapter, IteratorExpScopeAdapter, LambdaTypeCSScopeAdapter, LetExpCSScopeAdapter, LetExpScopeAdapter, LibOperationScopeAdapter, LibraryScopeAdapter, LibRootPackageScopeAdapter, ModelElementCSScopeAdapter, MonikeredElementCSScopeAdapter, NameExpCSScopeAdapter, NavigatingExpCSScopeAdapter, NavigationOperatorCSScopeAdapter, OCLinEcoreCSScopeAdapter, OperationCallExpScopeAdapter, OperationContextScopeAdapter, OperationCSScopeAdapter, OperationScopeAdapter, PackageCSScopeAdapter, PackageDeclarationScopeAdapter, PackageScopeAdapter, PostconditionScopeAdapter, PostScopeAdapter, PropertyContextScopeAdapter, ReferenceCSScopeAdapter, RootPackageCSScopeAdapter, RootPackageScopeAdapter, StandardDocumentScopeAdapter, TemplateBindingCSScopeAdapter, TemplateParameterSubstitutionCSScopeAdapter, TemplateSignatureCSScopeAdapter, TupleLiteralExpCSScopeAdapter, TupleTypeCSScopeAdapter, TypedTypeRefCSScopeAdapter, TypeNameExpCSScopeAdapter, VoidTypeScopeAdapter

public interface ScopeAdapter
extends TypeManagedAdapter

A AbstractScopeAdapter provides the basic behaviour for a family of derived classes that provide additional scope/environment behaviour for corresponding CS elements.


Nested Class Summary
static interface ScopeAdapter.Switch
           
 
Nested classes/interfaces inherited from interface org.eclipse.emf.common.notify.Adapter
org.eclipse.emf.common.notify.Adapter.Internal
 
Method Summary
 void computeLookup(EnvironmentView environmentView, org.eclipse.emf.ecore.EReference targetReference)
           
 ScopeView computeLookup(EnvironmentView environmentView, ScopeView scopeView)
          Add the local lookup contributions to a view of an Environment.
 ScopeView getInnerScopeView(TypeManager typeManager, org.eclipse.emf.ecore.EReference targetReference)
           
 ScopeView getOuterScopeView(TypeManager typeManager, org.eclipse.emf.ecore.EReference targetReference)
           
 ScopeAdapter getParent()
           
 RootScopeAdapter getRootScopeAdapter()
           
 ScopeAdapter getSourceScope(org.eclipse.emf.ecore.EStructuralFeature containmentFeature)
           
 org.eclipse.emf.ecore.EObject getTarget()
           
 
Methods inherited from interface org.eclipse.ocl.examples.pivot.utilities.TypeManagedAdapter
dispose, isAdapterFor
 
Methods inherited from interface org.eclipse.emf.common.notify.Adapter.Internal
unsetTarget
 
Methods inherited from interface org.eclipse.emf.common.notify.Adapter
isAdapterForType, notifyChanged, setTarget
 

Method Detail

computeLookup

ScopeView computeLookup(EnvironmentView environmentView,
                        ScopeView scopeView)
Add the local lookup contributions to a view of an Environment.

The EnvironmentView contains the lookup matching criteria such as a specific name and accumulates candidate results.

The input ScopeView identifies the CST node and the containment of the CST child from which the lookup is made allowing derived implementations to present the alternative environments specified as the Inherited Attributes in the OCL Specification.

The returned ScopeView identifies an outer scope in which the lookup may be continued if the local candidate results are not suitable.

Parameters:
environmentView - the EnvironmentView to compute
scopeView - the access selectivity to be applied by the lookup
Returns:
an outer ScopeView in which to continue the lookup, or null if none

computeLookup

void computeLookup(EnvironmentView environmentView,
                   org.eclipse.emf.ecore.EReference targetReference)

getInnerScopeView

ScopeView getInnerScopeView(TypeManager typeManager,
                            org.eclipse.emf.ecore.EReference targetReference)

getOuterScopeView

ScopeView getOuterScopeView(TypeManager typeManager,
                            org.eclipse.emf.ecore.EReference targetReference)

getParent

ScopeAdapter getParent()

getRootScopeAdapter

RootScopeAdapter getRootScopeAdapter()

getSourceScope

ScopeAdapter getSourceScope(org.eclipse.emf.ecore.EStructuralFeature containmentFeature)

getTarget

org.eclipse.emf.ecore.EObject getTarget()
Specified by:
getTarget in interface org.eclipse.emf.common.notify.Adapter