org.eclipse.ocl.examples.impactanalyzer.instanceScope
Class PredicateCheckNavigationStep
java.lang.Object
org.eclipse.ocl.examples.impactanalyzer.instanceScope.AbstractNavigationStep
org.eclipse.ocl.examples.impactanalyzer.instanceScope.PredicateCheckNavigationStep
- All Implemented Interfaces:
- NavigationStep, SemanticComparable
public class PredicateCheckNavigationStep
- extends AbstractNavigationStep
Evaluates an OCL expression that is expected to be the body
expression of an iterator expression.
Before the evaluation is triggered, the single iterator variable obtained from LoopExp.getIterator()
is set to the
RefObject
passed to #navigate(CoreConnection, AnnotatedRefObjectImpl, Map, Set)
in the fromObject
parameter. Depending on the particular type of iterator (select, reject or any), the object is
passed on if and only if the OCL expression evaluates to true/false/true, respectively. For any
iterators other than select, reject or any the object is passed through right away because the
semantics of the iterator are not known.
- Author:
- Axel Uhl D043530
Methods inherited from class org.eclipse.ocl.examples.impactanalyzer.instanceScope.AbstractNavigationStep |
addAlwaysEmptyChangeListener, addEnteringScopes, addExpressionForWhichThisIsNavigationStep, addHashCodeChangeListener, addLeavingScopes, addSourceTypeChangeListener, addTargetTypeChangeListener, annotateEObject, distinctSize, distinctSize, doesSourceTypeMatch, fireAfterHashCodeChange, fireBeforeHashCodeChange, getDebugInfo, getEnteringScopes, getId, getLeavingScopes, getNavigateCounter, getResultObjectsCounter, getSourceType, getTargetType, haveIntersectingSubclassTree, incrementNavigateCounter, isAbsolute, isAlwaysEmpty, navigate, newTokenForFiringHashCodeChangeEvent, setAlwaysEmpty, size, size, toString, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
PredicateCheckNavigationStep
public PredicateCheckNavigationStep(org.eclipse.emf.ecore.EClass sourceType,
org.eclipse.emf.ecore.EClass targetType,
IteratorExp iteratorExp,
PathCache pathCache,
OCLFactory oclFactory)
getSemanticIdentityOfSuper
public SemanticIdentity getSemanticIdentityOfSuper()
navigate
protected java.util.Set<AnnotatedEObject> navigate(AnnotatedEObject fromObject,
TracebackCache cache,
org.eclipse.emf.common.notify.Notification atPre)
- Specified by:
navigate
in class AbstractNavigationStep
contentToString
public java.lang.String contentToString(java.util.Map<NavigationStep,java.lang.Integer> visited,
int indent)
- Overrides:
contentToString
in class AbstractNavigationStep
getSemanticIdentity
public SemanticIdentity getSemanticIdentity()
- Specified by:
getSemanticIdentity
in interface SemanticComparable
- Overrides:
getSemanticIdentity
in class AbstractNavigationStep