class CheckInitializerVisitor
extends net.ssehub.easy.varModel.model.values.ValueVisitorAdapter
implements net.ssehub.easy.varModel.cst.IConstraintTreeVisitor
#accept(ContainerConstraintsFinder, IModelElement, IDecisionVariable) to use.
This visitor is inherently reusable as instance.| Modifier and Type | Field and Description |
|---|---|
private net.ssehub.easy.varModel.cst.ConstraintSyntaxTree |
expression |
private boolean |
isCompoundInitializer |
private net.ssehub.easy.varModel.model.IModelElement |
parent |
private boolean |
process |
private Resolver |
resolver |
private boolean |
substituteVars |
private net.ssehub.easy.varModel.model.values.Value |
value |
private net.ssehub.easy.varModel.confModel.IDecisionVariable |
variable |
| Constructor and Description |
|---|
CheckInitializerVisitor(Resolver resolver)
Creates the visitor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
accept(net.ssehub.easy.varModel.cst.ConstraintSyntaxTree cst,
net.ssehub.easy.varModel.model.IModelElement parent,
net.ssehub.easy.varModel.confModel.IDecisionVariable variable)
Accepts the results of a container constraints finder and derives constraints from the
contained constraints / constraint values.
|
private void |
checkForConstraint(net.ssehub.easy.varModel.model.datatypes.IDatatype type,
net.ssehub.easy.varModel.cst.ConstraintSyntaxTree cst)
Checks for a constraint expression.
|
private void |
createConstraintFromValue(net.ssehub.easy.varModel.model.values.Value value)
Creates a constraint from a value.
|
void |
visitAnnotationVariable(net.ssehub.easy.varModel.cst.AttributeVariable variable) |
void |
visitBlockExpression(net.ssehub.easy.varModel.cst.BlockExpression block) |
void |
visitBooleanValue(net.ssehub.easy.varModel.model.values.BooleanValue value) |
void |
visitComment(net.ssehub.easy.varModel.cst.Comment comment) |
void |
visitCompoundAccess(net.ssehub.easy.varModel.cst.CompoundAccess access) |
void |
visitCompoundInitializer(net.ssehub.easy.varModel.cst.CompoundInitializer compoundInit) |
void |
visitCompoundValue(net.ssehub.easy.varModel.model.values.CompoundValue value) |
void |
visitConstantValue(net.ssehub.easy.varModel.cst.ConstantValue value) |
void |
visitConstraintValue(net.ssehub.easy.varModel.model.values.ConstraintValue value) |
void |
visitContainerInitializer(net.ssehub.easy.varModel.cst.ContainerInitializer containerInit) |
void |
visitContainerOperationCall(net.ssehub.easy.varModel.cst.ContainerOperationCall call) |
void |
visitContainerValue(net.ssehub.easy.varModel.model.values.ContainerValue value) |
void |
visitIfThen(net.ssehub.easy.varModel.cst.IfThen ifThen) |
void |
visitLet(net.ssehub.easy.varModel.cst.Let let) |
void |
visitMultiAndExpression(net.ssehub.easy.varModel.cst.MultiAndExpression expression) |
void |
visitOclFeatureCall(net.ssehub.easy.varModel.cst.OCLFeatureCall call) |
void |
visitParenthesis(net.ssehub.easy.varModel.cst.Parenthesis parenthesis) |
void |
visitSelf(net.ssehub.easy.varModel.cst.Self self) |
void |
visitUnresolvedExpression(net.ssehub.easy.varModel.cst.UnresolvedExpression expression) |
void |
visitVariable(net.ssehub.easy.varModel.cst.Variable variable) |
private Resolver resolver
private boolean isCompoundInitializer
private net.ssehub.easy.varModel.cst.ConstraintSyntaxTree expression
private net.ssehub.easy.varModel.model.values.Value value
private boolean process
private net.ssehub.easy.varModel.confModel.IDecisionVariable variable
private net.ssehub.easy.varModel.model.IModelElement parent
private boolean substituteVars
public CheckInitializerVisitor(Resolver resolver)
resolver - the resolver instance to use for transforming and adding constraintspublic void accept(net.ssehub.easy.varModel.cst.ConstraintSyntaxTree cst,
net.ssehub.easy.varModel.model.IModelElement parent,
net.ssehub.easy.varModel.confModel.IDecisionVariable variable)
cst - the constraint to accept / visitparent - parent for temporary constraintsvariable - the actually (nested) variable, used to relate the created constraint to, may be nullpublic void visitCompoundValue(net.ssehub.easy.varModel.model.values.CompoundValue value)
visitCompoundValue in interface net.ssehub.easy.varModel.model.values.IValueVisitorvisitCompoundValue in class net.ssehub.easy.varModel.model.values.ValueVisitorAdapterpublic void visitContainerValue(net.ssehub.easy.varModel.model.values.ContainerValue value)
visitContainerValue in interface net.ssehub.easy.varModel.model.values.IValueVisitorvisitContainerValue in class net.ssehub.easy.varModel.model.values.ValueVisitorAdapterpublic void visitConstraintValue(net.ssehub.easy.varModel.model.values.ConstraintValue value)
visitConstraintValue in interface net.ssehub.easy.varModel.model.values.IValueVisitorvisitConstraintValue in class net.ssehub.easy.varModel.model.values.ValueVisitorAdapterpublic void visitBooleanValue(net.ssehub.easy.varModel.model.values.BooleanValue value)
visitBooleanValue in interface net.ssehub.easy.varModel.model.values.IValueVisitorvisitBooleanValue in class net.ssehub.easy.varModel.model.values.ValueVisitorAdapterprivate void createConstraintFromValue(net.ssehub.easy.varModel.model.values.Value value)
value - the valuepublic void visitCompoundInitializer(net.ssehub.easy.varModel.cst.CompoundInitializer compoundInit)
visitCompoundInitializer in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitContainerInitializer(net.ssehub.easy.varModel.cst.ContainerInitializer containerInit)
visitContainerInitializer in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorprivate void checkForConstraint(net.ssehub.easy.varModel.model.datatypes.IDatatype type,
net.ssehub.easy.varModel.cst.ConstraintSyntaxTree cst)
substituteVars.type - the actual data typecst - the constraint expressionpublic void visitConstantValue(net.ssehub.easy.varModel.cst.ConstantValue value)
visitConstantValue in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitVariable(net.ssehub.easy.varModel.cst.Variable variable)
visitVariable in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitAnnotationVariable(net.ssehub.easy.varModel.cst.AttributeVariable variable)
visitAnnotationVariable in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitParenthesis(net.ssehub.easy.varModel.cst.Parenthesis parenthesis)
visitParenthesis in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitComment(net.ssehub.easy.varModel.cst.Comment comment)
visitComment in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitOclFeatureCall(net.ssehub.easy.varModel.cst.OCLFeatureCall call)
visitOclFeatureCall in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitLet(net.ssehub.easy.varModel.cst.Let let)
visitLet in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitIfThen(net.ssehub.easy.varModel.cst.IfThen ifThen)
visitIfThen in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitContainerOperationCall(net.ssehub.easy.varModel.cst.ContainerOperationCall call)
visitContainerOperationCall in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitCompoundAccess(net.ssehub.easy.varModel.cst.CompoundAccess access)
visitCompoundAccess in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitUnresolvedExpression(net.ssehub.easy.varModel.cst.UnresolvedExpression expression)
visitUnresolvedExpression in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitSelf(net.ssehub.easy.varModel.cst.Self self)
visitSelf in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitBlockExpression(net.ssehub.easy.varModel.cst.BlockExpression block)
visitBlockExpression in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorpublic void visitMultiAndExpression(net.ssehub.easy.varModel.cst.MultiAndExpression expression)
visitMultiAndExpression in interface net.ssehub.easy.varModel.cst.IConstraintTreeVisitorCopyright © 2009 - 2018 SSE. All Rights Reserved.