public class ElementInteger extends Constraint implements UsesQueueVariable, Stateful, SatisfiedPresent
The first element of the list corresponds to index - indexOffset = 1. By default indexOffset is equal 0 so first value within a list corresponds to index equal 1.
If index has a domain from 0 to list.length-1 then indexOffset has to be equal -1 to make addressing of list array starting from 1.
| Modifier and Type | Field and Description |
|---|---|
boolean |
checkDuplicates
It specifies whether duplicate values should be treated specially (combined to a single check).
|
IntVar |
index
It specifies variable index within an element constraint list[index-indexOffset] = value.
|
int |
indexOffset
It specifies indexOffset within an element constraint list[index-indexOffset] = value.
|
int[] |
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, tracequeueIndex| Constructor and Description |
|---|
ElementInteger(IntVar index,
int[] list,
IntVar value,
int indexOffset)
It constructs an element constraint.
|
ElementInteger(IntVar index,
int[] list,
IntVar value,
int indexOffset,
boolean checkDuplicates)
It constructs an element constraint.
|
ElementInteger(IntVar index,
List<Integer> list,
IntVar value)
It constructs an element constraint with default indexOffset equal 0.
|
ElementInteger(IntVar index,
List<Integer> list,
IntVar value,
int indexOffset)
It constructs an element constraint.
|
ElementInteger(IntVar index,
List<Integer> list,
IntVar value,
int indexOffset,
boolean checkDuplicates)
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 |
queueVariable(int level,
Var var)
This is a function called to indicate which variable in a scope of
constraint has changed.
|
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, removeConstraint, requiresMonotonicity, setConsistencyPruningEvent, setConstraintScope, setScope, setScope, setScope, setScope, setScope, setWatchedVariableGrounded, supplyGuideFeedback, updateAFC, watchedVariableGroundedauxiliaryVariables, checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecompositionpublic IntVar index
public IntVar value
public final int indexOffset
public final boolean checkDuplicates
public int[] list
>=1) if indexOffset is equal to 0.public ElementInteger(IntVar index, int[] list, IntVar value, int indexOffset)
index - variable indexlist - list of integers from which an index-th element is takenvalue - a value of the index-th element from listindexOffset - shift applied to index variable.public ElementInteger(IntVar index, int[] list, IntVar value, int indexOffset, boolean checkDuplicates)
index - variable indexlist - list of integers from which an index-th element is takenvalue - a value of the index-th element from listindexOffset - shift applied to index variable.checkDuplicates - informs whether to create duplicates list for values from list (default = true).public ElementInteger(IntVar index, List<Integer> list, IntVar value)
index - index variable.list - list containing variables which one pointed out by index variable is made equal to value variable.value - a value variable equal to the specified element from the list.public ElementInteger(IntVar index, List<Integer> list, IntVar value, int indexOffset)
index - variable indexlist - list of integers from which an index-th element is takenvalue - a value of the index-th element from listindexOffset - shift applied to index variable.public ElementInteger(IntVar index, List<Integer> list, IntVar value, int indexOffset, boolean checkDuplicates)
index - variable indexlist - list of integers from which an index-th element is takenvalue - a value of the index-th element from listindexOffset - shift applied to index variable.checkDuplicates - informs whether to create duplicates list for values from list (default = true).public void removeLevel(int level)
StatefulremoveLevel in interface Statefullevel - the level which is being removed.public void consistency(Store store)
Constraintconsistency in class Constraintstore - constraint store within which the constraint consistency is being checked.public int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent in class Constraintpublic boolean isStateful()
StatefulisStateful in interface Statefulpublic void impose(Store store)
impose in class Constraintstore - the constraint store to which the constraint is imposed to.public void queueVariable(int level,
Var var)
ConstraintqueueVariable in class Constraintlevel - the level of the store at which the change has occurred.var - variable which has changed.public boolean satisfied()
SatisfiedPresentImplementations 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 SatisfiedPresentpublic String toString()
ConstrainttoString in class ConstraintCopyright © 2022. All rights reserved.