Interface VariableValueCopier.IFreezeProvider
- All Known Implementing Classes:
VariableValueCopier.EnumAttributeFreezeProvider,VariableValueCopier.SourceBasedFreezeProvider
- Enclosing class:
VariableValueCopier
public static interface VariableValueCopier.IFreezeProvider
An interface providing information to create freeze blocks for new variables.
- Author:
- Holger Eichelberger
-
Method Summary
Modifier and TypeMethodDescriptioncreateButExpression(DecisionVariableDeclaration freezeIter) Creates the freeze-but expression.The name of the freeze variable.Returns a freeze selector to use.
-
Method Details
-
getFreezeVariableName
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
-