Class ContainerElementAccessor
- java.lang.Object
-
- net.ssehub.easy.varModel.cstEvaluation.EvaluationAccessor
-
- net.ssehub.easy.varModel.cstEvaluation.AbstractDecisionVariableEvaluationAccessor
-
- net.ssehub.easy.varModel.cstEvaluation.ContainerElementAccessor
-
class ContainerElementAccessor extends AbstractDecisionVariableEvaluationAccessor
Implements an accessor for decision variables.- Author:
- Holger Eichelberger
-
-
Field Summary
Fields Modifier and Type Field Description private IDecisionVariableelementVariablestatic Pool<ContainerElementAccessor>POOL
-
Constructor Summary
Constructors Modifier Constructor Description privateContainerElementAccessor()Creates an instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ContainerElementAccessorbind(IDecisionVariable variable, int index, EvaluationContext context)Binds the accessor to the given variable and context.voidclear()Clears the accessor for reuse.ValuegetValue()Returns the value of the accessed element.booleanisAssignable()Returns whether values can be assigned to this evaluator.voidrelease()Releases this instance.booleansetValue(Value value, boolean asAssignment)Defines a new value for the accessed element.-
Methods inherited from class net.ssehub.easy.varModel.cstEvaluation.AbstractDecisionVariableEvaluationAccessor
bind, getReferenceValue, getVariable, isLocal, notifyVariableChange, toString
-
Methods inherited from class net.ssehub.easy.varModel.cstEvaluation.EvaluationAccessor
addBoundContainerElement, addBoundContainerElement, bind, bindContainer, bindContainer, clearContainerElements, dereferenceIfNeeded, getBoundContainerElement, getBoundContainerElementCount, getContext, getDereferencedValue, getValue, isAssigned, isConstant, release, setValue, validateContext
-
-
-
-
Field Detail
-
POOL
public static final Pool<ContainerElementAccessor> POOL
-
elementVariable
private IDecisionVariable elementVariable
-
-
Method Detail
-
bind
public ContainerElementAccessor bind(IDecisionVariable variable, int index, EvaluationContext context)
Binds the accessor to the given variable and context.- Parameters:
variable- the underlying variableindex- the index of the element to accesscontext- the evaluation context- Returns:
- this (builder pattern)
-
clear
public void clear()
Description copied from class:EvaluationAccessorClears the accessor for reuse.- Overrides:
clearin classAbstractDecisionVariableEvaluationAccessor
-
getValue
public Value getValue()
Description copied from class:EvaluationAccessorReturns the value of the accessed element.- Specified by:
getValuein classEvaluationAccessor- Returns:
- the value (may be null if undefined)
-
setValue
public boolean setValue(Value value, boolean asAssignment)
Description copied from class:EvaluationAccessorDefines a new value for the accessed element. In case of failures, add appropriate messages to the context.- Specified by:
setValuein classEvaluationAccessor- Parameters:
value- the new valueasAssignment- does this happen through an IVML assignment operation- Returns:
trueif successful,falseelse
-
release
public void release()
Description copied from class:EvaluationAccessorReleases this instance.- Specified by:
releasein classEvaluationAccessor
-
isAssignable
public boolean isAssignable()
Description copied from class:EvaluationAccessorReturns whether values can be assigned to this evaluator.- Specified by:
isAssignablein classEvaluationAccessor- Returns:
trueif values can be assigned,falseelse
-
-