public class IfThenElse extends PrimitiveConstraint implements UsesQueueVariable
Modifier and Type | Field and Description |
---|---|
PrimitiveConstraint |
condC
It specifies constraint condC in the IfThenElse constraint.
|
PrimitiveConstraint |
elseC
It specifies constraint elseC in the IfThenElse constraint.
|
QueueForward<PrimitiveConstraint> |
queueForward |
PrimitiveConstraint |
thenC
It specifies constraint condC in the IfThenElse constraint.
|
notConsistencyPruningEvents
atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope, trace
queueIndex
Constructor and Description |
---|
IfThenElse(PrimitiveConstraint condC,
PrimitiveConstraint thenC,
PrimitiveConstraint elseC)
It creates ifthenelse 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 |
getConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the
constraint.
|
int |
getDefaultConsistencyPruningEvent() |
protected int |
getDefaultNotConsistencyPruningEvent() |
int |
getNestedPruningEvent(Var var,
boolean mode)
It retrieves the pruning event for which any composed constraint which
uses this constraint should be evaluated.
|
int |
getNotConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the
constraint notConsistency() function.
|
void |
impose(Store store)
It imposes the constraint in a given store.
|
void |
include(Store store)
It provide store for constraints that are not imposed but called from other constraints.
|
void |
notConsistency(Store store)
It makes pruning in such a way that constraint is notConsistent.
|
boolean |
notSatisfied()
It checks if constraint would be always not satisfied.
|
void |
queueVariable(int level,
Var variable)
This is a function called to indicate which variable in a scope of
constraint has changed.
|
boolean |
satisfied()
It checks if the constraint is satisfied.
|
String |
toString()
It produces a string representation of a constraint state.
|
getDefaultNestedConsistencyPruningEvent, getDefaultNestedNotConsistencyPruningEvent, setNotConsistencyPruningEvent
afc, arguments, cleanAfterFailure, decompose, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, imposeDecomposition, increaseWeight, intArrayToString, long2int, numberArgs, 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 PrimitiveConstraint condC
public PrimitiveConstraint thenC
public PrimitiveConstraint elseC
public final QueueForward<PrimitiveConstraint> queueForward
public IfThenElse(PrimitiveConstraint condC, PrimitiveConstraint thenC, PrimitiveConstraint elseC)
condC
- the condition of the constraint.thenC
- the condition which must be true if the constraint condition is true.elseC
- the condition which must be true if the constraint condition is not true.public void consistency(Store store)
Constraint
consistency
in class Constraint
store
- constraint store within which the constraint consistency is being checked.public boolean notSatisfied()
PrimitiveConstraint
notSatisfied
in class PrimitiveConstraint
public void notConsistency(Store store)
PrimitiveConstraint
notConsistency
in class PrimitiveConstraint
store
- the constraint store in which context the notConsistency technique is evaluated.public int getNestedPruningEvent(Var var, boolean mode)
PrimitiveConstraint
getNestedPruningEvent
in class PrimitiveConstraint
var
- for which pruning event is retrievedmode
- decides if pruning event for consistency or nonconsistency is required.protected int getDefaultNotConsistencyPruningEvent()
getDefaultNotConsistencyPruningEvent
in class PrimitiveConstraint
public int getConsistencyPruningEvent(Var var)
Constraint
getConsistencyPruningEvent
in class Constraint
var
- variable for which pruning event is retrievedpublic int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent
in class Constraint
public int getNotConsistencyPruningEvent(Var var)
PrimitiveConstraint
getNotConsistencyPruningEvent
in class PrimitiveConstraint
var
- for which pruning event is retrievedpublic void impose(Store store)
Constraint
impose
in class PrimitiveConstraint
store
- the constraint store to which the constraint is imposed to.public void include(Store store)
StoreAware
include
in interface StoreAware
include
in class PrimitiveConstraint
store
- the constraint store in which context the constraint is executed.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
public void queueVariable(int level, Var variable)
Constraint
queueVariable
in class Constraint
level
- the level of the store at which the change has occurred.variable
- variable which has changed.Copyright © 2022. All rights reserved.