public class NavigationStepSequence extends CompositeNavigationStep
Constructor and Description |
---|
NavigationStepSequence(OCLExpression debugInfo,
NavigationStep... steps)
Because some
NavigationStep s such as IndirectingStep may change
their source/target type as they get lazily initialized, this constructor passes
on null as source/target type. |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
contentToString(java.util.Map<NavigationStep,java.lang.Integer> visited,
int indent) |
boolean |
isAbsolute()
The sequence is considered absolute if its last step is always empty.
|
protected java.util.Set<AnnotatedEObject> |
navigate(AnnotatedEObject fromObject,
TracebackCache cache,
org.eclipse.emf.common.notify.Notification changeEvent) |
afterHashCodeChange, beforeHashCodeChange, distinctSize, getInstanceScopeAnalysis, getSemanticIdentity, getSemanticIdentityOfAbstractNavigationStep, getSteps, size
addAlwaysEmptyChangeListener, addEnteringScopes, addExpressionForWhichThisIsNavigationStep, addHashCodeChangeListener, addLeavingScopes, addSourceTypeChangeListener, addTargetTypeChangeListener, annotateEObject, distinctSize, doesSourceTypeMatch, fireAfterHashCodeChange, fireBeforeHashCodeChange, getDebugInfo, getEnteringScopes, getId, getLeavingScopes, getNavigateCounter, getResultObjectsCounter, getSourceType, getTargetType, haveIntersectingSubclassTree, incrementNavigateCounter, isAlwaysEmpty, navigate, newTokenForFiringHashCodeChangeEvent, setAlwaysEmpty, size, toString, toString
public NavigationStepSequence(OCLExpression debugInfo, NavigationStep... steps)
NavigationStep
s such as IndirectingStep
may change
their source/target type as they get lazily initialized, this constructor passes
on null as source/target type. Instead, this class redefined
AbstractNavigationStep.getSourceType()
and AbstractNavigationStep.getTargetType()
and dynamically fetches them
from the underlying step sequence.public boolean isAbsolute()
AbstractNavigationStep.isAlwaysEmpty()
.isAbsolute
in interface NavigationStep
isAbsolute
in class AbstractNavigationStep
protected java.util.Set<AnnotatedEObject> navigate(AnnotatedEObject fromObject, TracebackCache cache, org.eclipse.emf.common.notify.Notification changeEvent)
navigate
in class AbstractNavigationStep
public java.lang.String contentToString(java.util.Map<NavigationStep,java.lang.Integer> visited, int indent)
contentToString
in class AbstractNavigationStep