36 template<
class OptTask,
class PL>
41 if (t[i].excluded()) {
42 t[i].
cancel(home,p,PL::pc); t[i]=t[--n];
49 template<
class OptTask,
class PL,
class Cap>
54 if (t[i].excluded()) {
55 t[i].
cancel(home,p,PL::pc); t[i]=t[--n];
61 else if (c.
min() < t[0].c())
friend FloatVal min(const FloatVal &x, const FloatVal &y)
void cancel(Space &home, Propagator &p, PropCond pc=Int::PC_INT_BND)
Cancel subscription of propagator p for all tasks.
int size(void) const
Return size of array (number of elements)
Base-class for propagators.
ExecStatus ES_SUBSUMED(Propagator &p)
Propagator p is subsumed
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
ExecStatus purge(Space &home, Propagator &p, TaskArray< OptTask > &t)
Purge optional tasks that are excluded and possibly rewrite propagator.
Gecode toplevel namespace
@ ES_OK
Execution is okay.