Modifier and Type | Method and Description |
---|---|
boolean |
PartialEvaluatorImpl.hasNoEffectOnOverallExpression(OCLExpression e,
java.lang.Object oldValue,
java.lang.Object newValue,
OperationBodyToCallMapper mapper)
Determines if a change of e's value from oldValue to
newValue may or may not have an effect on the overall expression by which e is used.
|
java.util.Collection<Tuple.Pair<OCLExpression,java.util.Collection<java.lang.Object>>> |
PartialEvaluatorImpl.transitivelyPropagateDelta(OCLExpression e,
java.util.Collection<java.lang.Object> deltaForEValue,
OperationBodyToCallMapper mapper)
Tries to find a
propagation strategy for the combination of the OCL expression e
and a given delta for its evaluation result. |
Constructor and Description |
---|
OperationBodyPropagationStrategy(OperationBodyToCallMapper mapper) |
Modifier and Type | Class and Description |
---|---|
class |
FilterSynthesisImpl
Collects the relevant events for a single
OCLExpression recursively. |
Modifier and Type | Method and Description |
---|---|
protected void |
AbstractTracer.applyScopesOnNavigationStep(NavigationStep step,
OperationBodyToCallMapper operationBodyToCallMapper) |
protected java.util.Set<Variable> |
AbstractTracer.calculateEnteringScope(OperationBodyToCallMapper operationBodyToCallMapper)
Calculates the scopes the
NavigationStep this Tracer creates will enter when navigated. |
protected java.util.Set<Variable> |
IterateExpTracer.calculateEnteringScope(OperationBodyToCallMapper operationBodyToCallMapper) |
protected java.util.Set<Variable> |
IteratorExpTracer.calculateEnteringScope(OperationBodyToCallMapper operationBodyToCallMapper) |
protected java.util.Set<Variable> |
LetExpTracer.calculateEnteringScope(OperationBodyToCallMapper operationBodyToCallMapper) |
protected java.util.Set<Variable> |
OperationCallExpTracer.calculateEnteringScope(OperationBodyToCallMapper operationBodyToCallMapper) |
protected java.util.Set<Variable> |
AbstractTracer.calculateLeavingScopes(OperationBodyToCallMapper operationBodyToCallMapper)
Calculates which scopes the
NavigationStep this Tracer creates will leave when navigated. |
protected java.util.Set<Variable> |
OperationCallExpTracer.calculateLeavingScopes(OperationBodyToCallMapper operationBodyToCallMapper)
When tracing into the called operation's body, all variables currently in scope are left.
|
protected java.util.Set<Variable> |
VariableExpTracer.calculateLeavingScopes(OperationBodyToCallMapper operationBodyToCallMapper) |
protected abstract StepType |
AbstractPathCache.createStep(OCLExpression sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OCLFactory oclFactory) |
protected NavigationStep |
PathCache.createStep(OCLExpression sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OCLFactory oclFactory) |
protected static java.util.Set<Variable> |
AbstractTracer.getAllVariablesInScope(OCLExpression e,
OperationBodyToCallMapper operationBodyToCallMapper) |
StepType |
AbstractPathCache.getOrCreateNavigationPath(OCLExpression sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OCLFactory oclFactory) |
protected java.util.Set<Variable> |
AbstractTracer.getVariablesIntroducedBetweenHereAnd(OCLExpression parent,
OperationBodyToCallMapper operationBodyToCallMapper)
This method is a shortcut for
AbstractTracer.variablesIntroducedBetween(OCLExpression, OCLExpression, OperationBodyToCallMapper) that uses AbstractTracer.getExpression() as the origin. |
protected static java.util.Set<Variable> |
AbstractTracer.getVariablesScopedByExpression(OCLExpression e,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
AbstractTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper)
By default, many expression types which, e.g., result in a primitive result, return an
EmptyResultNavigationStep
which is what this default implementation does. |
NavigationStep |
CollectionLiteralExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
IfExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
IterateExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
IteratorExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
LetExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
OperationCallExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
OppositePropertyCallExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
PropertyCallExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
Tracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper filterSynthesizer)
Computes a navigation step that when executed, computes a set of elements containing at least all context elements such
that when the overall expression of which the expression represented by this tracer is a part, is evaluated for such an
element, the sub-expression represented by this tracer evaluates to the element passed to the navigation step's
NavigationStep.navigate(Set, TracebackCache, Notification) operation in the set parameter. |
NavigationStep |
TupleLiteralExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper) |
NavigationStep |
VariableExpTracer.traceback(org.eclipse.emf.ecore.EClass context,
PathCache pathCache,
OperationBodyToCallMapper operationBodyToCallMapper)
The step produced will be invoked with the value for the variable.
|
protected java.util.Set<Variable> |
AbstractTracer.variablesIntroducedBetween(OCLExpression origin,
OCLExpression parent,
OperationBodyToCallMapper operationBodyToCallMapper)
This method returns all variables introduced by
parent or any contained expression along the containment
hierarchy, down to origin . |
Modifier and Type | Method and Description |
---|---|
protected TracebackStep |
TracebackStepCache.createStep(OCLExpression sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OCLFactory oclFactory) |
protected AbstractTracebackStep.TracebackStepAndScopeChange |
AbstractTracebackStep.createTracebackStepAndScopeChange(OCLExpression sourceExpression,
OCLExpression targetExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache)
Creates a new
AbstractTracebackStep.TracebackStepAndScopeChange } object. |
protected AbstractTracebackStep.TracebackStepAndScopeChangeWithOperationCallExp |
AbstractTracebackStep.createTracebackStepAndScopeChange(OCLExpression sourceExpression,
OCLExpression targetExpression,
OperationCallExp call,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache)
Creates a new
AbstractTracebackStep.TracebackStepAndScopeChange } object, remembering an OperationCallExp to which the
results produced by this step are specific. |
protected static java.util.Set<Variable> |
AbstractTracebackStep.getAllVariablesInScope(OCLExpression e,
OperationBodyToCallMapper operationBodyToCallMapper)
Starting from
e and ascending its containment hierarchy, adds to the resulting set all variables that are scoped by
any of the expressions visited. |
protected static java.util.Set<Variable> |
AbstractTracebackStep.getVariablesScopedByExpression(OCLExpression e,
OperationBodyToCallMapper operationBodyToCallMapper) |
Constructor and Description |
---|
AbstractTracebackStep(E sourceExpression,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OppositeEndFinder oppositeEndFinder,
OperationBodyToCallMapper operationBodyToCallMapper,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory)
If the expression's type for which this traceback step is constructed is class-like,
AbstractTracebackStep.requiredType is set to the
expression's type. |
BranchingTracebackStep(E sourceExpression,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
OppositeEndFinder oppositeEndFinder,
OperationBodyToCallMapper operationBodyToCallMapper,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
CollectionLiteralTracebackStep(CollectionLiteralExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
EmptyTracebackStep(OCLExpression sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
IfTracebackStep(IfExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
IterateTracebackStep(IterateExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
IteratorTracebackStep(IteratorExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
LetTracebackStep(LetExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
OperationCallTracebackStep(OperationCallExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
OppositePropertyCallTracebackStep(OppositePropertyCallExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
PropertyCallTracebackStep(PropertyCallExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
TupleLiteralTracebackStep(TupleLiteralExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |
VariableTracebackStep(VariableExp sourceExpression,
org.eclipse.emf.ecore.EClass context,
OperationBodyToCallMapper operationBodyToCallMapper,
java.util.Stack<java.lang.String> tupleLiteralNamesToLookFor,
TracebackStepCache tracebackStepCache,
UnusedEvaluationRequestFactory unusedEvaluationRequestFactory,
OCLFactory oclFactory) |