Class AssignmentReducer
- java.lang.Object
-
- net.ssehub.easy.varModel.cst.AbstractConstraintTreeVisitor
-
- net.ssehub.easy.varModel.model.rewrite.AssignmentReducer
-
- All Implemented Interfaces:
IConstraintTreeVisitor
class AssignmentReducer extends AbstractConstraintTreeVisitor
Part of theProjectRewriteVisitorto remove sub values of a RHS of an assignment, if declarations of this assignments have been removed.
Visiting should be started withreduce(OCLFeatureCall)instead of using the usual accept methods.- Author:
- El-Sharkawy
-
-
Field Summary
Fields Modifier and Type Field Description private RewriteContextcontextprivate booleanfilteredprivate ConstraintSyntaxTreeresult
-
Constructor Summary
Constructors Constructor Description AssignmentReducer(RewriteContext context)Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) booleanhasFiltered()Returns whether the given assignment was filtered or not.protected ConstraintSyntaxTreereduce(OCLFeatureCall assignment)Start method for reducing assignments.voidvisitCompoundInitializer(CompoundInitializer initializer)Visits a compound initializer.voidvisitConstantValue(ConstantValue constValue)Visits a constant value.voidvisitContainerInitializer(ContainerInitializer initializer)Visits a container initializer.-
Methods inherited from class net.ssehub.easy.varModel.cst.AbstractConstraintTreeVisitor
visitAnnotationVariable, visitBlockExpression, visitComment, visitCompoundAccess, visitContainerOperationCall, visitDeferInitExpression, visitIfThen, visitLet, visitMultiAndExpression, visitOclFeatureCall, visitParenthesis, visitSelf, visitUnresolvedExpression, visitVariable
-
-
-
-
Field Detail
-
context
private RewriteContext context
-
result
private ConstraintSyntaxTree result
-
filtered
private boolean filtered
-
-
Constructor Detail
-
AssignmentReducer
AssignmentReducer(RewriteContext context)
Default constructor.- Parameters:
context- The context, containing information about filtered elements.
-
-
Method Detail
-
reduce
protected ConstraintSyntaxTree reduce(OCLFeatureCall assignment)
Start method for reducing assignments.- Parameters:
assignment- And assignment constraint.- Returns:
- Will return
- The passed call, if if was not an assignment or if nothing was to filter
- The filtered assignment, if some of the used elements were removed
- null, if all elements or necessary elements have been removed.
-
hasFiltered
boolean hasFiltered()
Returns whether the given assignment was filtered or not.- Returns:
- true Something was filtered, false assignment is at it was before.
-
visitConstantValue
public void visitConstantValue(ConstantValue constValue)
Description copied from interface:IConstraintTreeVisitorVisits a constant value.- Specified by:
visitConstantValuein interfaceIConstraintTreeVisitor- Overrides:
visitConstantValuein classAbstractConstraintTreeVisitor- Parameters:
constValue- the value which should be visited
-
visitCompoundInitializer
public void visitCompoundInitializer(CompoundInitializer initializer)
Description copied from interface:IConstraintTreeVisitorVisits a compound initializer.- Specified by:
visitCompoundInitializerin interfaceIConstraintTreeVisitor- Overrides:
visitCompoundInitializerin classAbstractConstraintTreeVisitor- Parameters:
initializer- the compound initializer node
-
visitContainerInitializer
public void visitContainerInitializer(ContainerInitializer initializer)
Description copied from interface:IConstraintTreeVisitorVisits a container initializer.- Specified by:
visitContainerInitializerin interfaceIConstraintTreeVisitor- Overrides:
visitContainerInitializerin classAbstractConstraintTreeVisitor- Parameters:
initializer- the container initializer node
-
-