public class ElementVariableFast extends Constraint implements Stateful, SatisfiedPresent
Modifier and Type | Field and Description |
---|---|
IntVar |
index
It specifies variable index within an element constraint list[index - indexOffset] = value.
|
protected int |
indexOffset
It specifies indexOffset within an element constraint list[index - indexOffset] = value.
|
IntVar[] |
list
It specifies list of variables within an element constraint list[index - indexOffset] = value.
|
IntVar |
value
It specifies variable value within an element constraint list[index - indexOffset] = value.
|
atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope, trace
queueIndex
Constructor and Description |
---|
ElementVariableFast(IntVar index,
IntVar[] list,
IntVar value)
It constructs an element constraint.
|
ElementVariableFast(IntVar index,
IntVar[] list,
IntVar value,
int indexOffset)
It constructs an element constraint.
|
ElementVariableFast(IntVar index,
List<? extends IntVar> list,
IntVar value)
It constructs an element constraint.
|
ElementVariableFast(IntVar index,
List<? extends IntVar> list,
IntVar value,
int indexOffset)
It constructs an element constraint.
|
Modifier and Type | Method and Description |
---|---|
void |
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the
values from variables domains.
|
int |
getDefaultConsistencyPruningEvent() |
void |
impose(Store store)
It imposes the constraint in a given store.
|
boolean |
isStateful()
This function can be overriden by any constraint to specify dynamic conditions (based on
the domain of variables at imposition level to decide if it is a stateful constraint.
|
void |
removeLevel(int level)
This function is called in case of the backtrack, so a constraint can
clear the queue of changed variables which is no longer valid.
|
boolean |
satisfied()
It checks if the constraint is satisfied.
|
String |
toString()
It produces a string representation of a constraint state.
|
afc, arguments, cleanAfterFailure, decompose, getConsistencyPruningEvent, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, imposeDecomposition, increaseWeight, intArrayToString, long2int, numberArgs, queueVariable, removeConstraint, requiresMonotonicity, setConsistencyPruningEvent, setConstraintScope, setScope, setScope, setScope, setScope, setScope, setWatchedVariableGrounded, supplyGuideFeedback, updateAFC, watchedVariableGrounded
auxiliaryVariables, checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecomposition
public final IntVar index
public final IntVar value
protected final int indexOffset
public final IntVar[] list
>=1
) if indexOffset is equal to 0.public ElementVariableFast(IntVar index, IntVar[] list, IntVar value, int indexOffset)
index
- variable indexlist
- list of variables from which an index-th element is takenvalue
- a value of the index-th element from listindexOffset
- shift applied to index variable.public ElementVariableFast(IntVar index, List<? extends IntVar> list, IntVar value)
index
- variable indexlist
- list of variables from which an index-th element is takenvalue
- a value of the index-th element from listpublic ElementVariableFast(IntVar index, List<? extends IntVar> list, IntVar value, int indexOffset)
index
- variable indexlist
- list of variables from which an index-th element is takenvalue
- a value of the index-th element from listindexOffset
- shift applied to index variable.public boolean isStateful()
Stateful
isStateful
in interface Stateful
public void impose(Store store)
impose
in class Constraint
store
- the constraint store to which the constraint is imposed to.public void consistency(Store store)
Constraint
consistency
in class Constraint
store
- constraint store within which the constraint consistency is being checked.public int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent
in class Constraint
public void removeLevel(int level)
Stateful
removeLevel
in interface Stateful
level
- the level which is being removed.public boolean satisfied()
SatisfiedPresent
Implementations of this interface for constraints that are not PrimitiveConstraint may require constraint imposition and consistency check as a requirement to work correctly.
satisfied
in interface SatisfiedPresent
public String toString()
Constraint
toString
in class Constraint
Copyright © 2022. All rights reserved.