39 LinkSingle::LinkSingle(Space& home,
LinkSingle& p)
45 return new (home) LinkSingle(home,*
this);
57 }
else if (
x0.one()) {
60 assert(
x0.none() &&
x1.assigned());
64 assert(
x1.val() == 1);
Link propagator for a single Boolean view.
virtual PropCost cost(const Space &home, const ModEventDelta &med) const
Cost function (defined as low unary)
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
virtual Actor * copy(Space &home)
Copy propagator during cloning.
static PropCost unary(PropCost::Mod m)
Single variable for modifier pcm.
ExecStatus ES_SUBSUMED(Propagator &p)
Propagator p is subsumed
int ModEventDelta
Modification event deltas.
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
const Gecode::PropCond PC_INT_VAL
Propagate when a view becomes assigned (single value)
const Gecode::PropCond PC_BOOL_VAL
Propagate when a view becomes assigned (single value)
Gecode toplevel namespace