Interface VariableValueCopier.IFreezeProvider
-
- All Known Implementing Classes:
VariableValueCopier.EnumAttributeFreezeProvider,VariableValueCopier.SourceBasedFreezeProvider
- Enclosing class:
- VariableValueCopier
public static interface VariableValueCopier.IFreezeProviderAn interface providing information to create freeze blocks for new variables.- Author:
- Holger Eichelberger
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ConstraintSyntaxTreecreateButExpression(DecisionVariableDeclaration freezeIter)Creates the freeze-but expression.java.lang.StringgetFreezeVariableName()The name of the freeze variable.IFreezeSelectorgetSelector()Returns a freeze selector to use.
-
-
-
Method Detail
-
getFreezeVariableName
java.lang.String getFreezeVariableName()
The name of the freeze variable.- Returns:
- the name
-
createButExpression
ConstraintSyntaxTree createButExpression(DecisionVariableDeclaration freezeIter) throws CSTSemanticException, ValueDoesNotMatchTypeException
Creates the freeze-but expression.- Parameters:
freezeIter- the freeze iterator variable (of typeFreezeVariableType)- Returns:
- the but-expression
- Throws:
CSTSemanticException- in case that the but-expression was not constructed correctlyValueDoesNotMatchTypeException- in case that creating values fails
-
getSelector
IFreezeSelector getSelector()
Returns a freeze selector to use.- Returns:
- the selector or null for none, i.e., create an internal freeze-block based on the information in this provider
-
-