Package net.ssehub.easy.varModel.cst
Class CopyVisitor
- java.lang.Object
-
- net.ssehub.easy.varModel.cst.BasicCopyVisitor
-
- net.ssehub.easy.varModel.cst.CopyVisitor
-
- All Implemented Interfaces:
IConstraintTreeVisitor
- Direct Known Subclasses:
CSTCopyVisitor
public class CopyVisitor extends BasicCopyVisitor
Copies a constraint syntax tree possibly mapping the variables. May be reused after callingBasicCopyVisitor.clear()- Author:
- Holger Eichelberger
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCopyVisitor.IVariableReplacerDefines a common variable replacer.
-
Field Summary
Fields Modifier and Type Field Description private IVersionRestriction.IVariableMappermapperprivate java.util.Map<AbstractVariable,AbstractVariable>mappingprivate CopyVisitor.IVariableReplacerreplacer
-
Constructor Summary
Constructors Constructor Description CopyVisitor()Creates a copy visitor without mapping.CopyVisitor(java.util.Map<AbstractVariable,AbstractVariable> mapping)Creates a copy visitor with explicit mapping.CopyVisitor(IVersionRestriction.IVariableMapper mapper)Creates a copy visitor with explicit mapping.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.util.Map<AbstractVariable,AbstractVariable>getMapping()Returns the specified variable mapping.protected AbstractVariablemapVariable(AbstractVariable var)Maps a variable.protected DecisionVariableDeclarationmapVariable(DecisionVariableDeclaration var)Maps a variable.voidvisitAnnotationVariable(AttributeVariable variable)Visits aAttributeVariable.voidvisitSelf(Self self)Visits self.voidvisitVariable(Variable variable)Visits a variable.-
Methods inherited from class net.ssehub.easy.varModel.cst.BasicCopyVisitor
clear, getCopyExpressions, getCopyVariables, getLogger, getResult, inferDatatype, setCopyConstants, setCopyExpressions, setCopyVariables, setDoInferDatatype, setResult, visitBlockExpression, visitComment, visitCompoundAccess, visitCompoundInitializer, visitConstantValue, visitContainerInitializer, visitContainerOperationCall, visitDeferInitExpression, visitIfThen, visitLet, visitMultiAndExpression, visitOclFeatureCall, visitParenthesis, visitUnresolvedExpression
-
-
-
-
Field Detail
-
mapping
private java.util.Map<AbstractVariable,AbstractVariable> mapping
-
mapper
private IVersionRestriction.IVariableMapper mapper
-
replacer
private CopyVisitor.IVariableReplacer replacer
-
-
Constructor Detail
-
CopyVisitor
public CopyVisitor()
Creates a copy visitor without mapping.
-
CopyVisitor
public CopyVisitor(java.util.Map<AbstractVariable,AbstractVariable> mapping)
Creates a copy visitor with explicit mapping.- Parameters:
mapping- a mapping from old variable declarations to new variable declarations, existing variable declarations are taken over if no mapping is given, may be null in case of no mapping at all
-
CopyVisitor
public CopyVisitor(IVersionRestriction.IVariableMapper mapper)
Creates a copy visitor with explicit mapping.- Parameters:
mapper- the variable mapper (may be null)
-
-
Method Detail
-
getMapping
protected java.util.Map<AbstractVariable,AbstractVariable> getMapping()
Returns the specified variable mapping.- Returns:
- A mapping from old variable declarations to new variable declarations, existing variable declarations are taken over if no mapping is given, may be null
-
visitVariable
public void visitVariable(Variable variable)
Description copied from interface:IConstraintTreeVisitorVisits a variable.- Specified by:
visitVariablein interfaceIConstraintTreeVisitor- Overrides:
visitVariablein classBasicCopyVisitor- Parameters:
variable- the variable which should be visited
-
mapVariable
protected DecisionVariableDeclaration mapVariable(DecisionVariableDeclaration var)
Description copied from class:BasicCopyVisitorMaps a variable.- Overrides:
mapVariablein classBasicCopyVisitor- Parameters:
var- the variable to be mapped- Returns:
- the mapped variable or
var
-
mapVariable
protected AbstractVariable mapVariable(AbstractVariable var)
Description copied from class:BasicCopyVisitorMaps a variable.- Overrides:
mapVariablein classBasicCopyVisitor- Parameters:
var- the variable to be mapped- Returns:
- the mapped variable or
var
-
visitAnnotationVariable
public void visitAnnotationVariable(AttributeVariable variable)
Description copied from interface:IConstraintTreeVisitorVisits aAttributeVariable.- Specified by:
visitAnnotationVariablein interfaceIConstraintTreeVisitor- Overrides:
visitAnnotationVariablein classBasicCopyVisitor- Parameters:
variable- the attribute variable which should be visited
-
visitSelf
public void visitSelf(Self self)
Description copied from interface:IConstraintTreeVisitorVisits self.- Specified by:
visitSelfin interfaceIConstraintTreeVisitor- Overrides:
visitSelfin classBasicCopyVisitor- Parameters:
self- the self object to visit
-
-