40#define GECODE_SET_ME_CHECK_VAL(p,f) { \
41 ModEvent __me__ ## __LINE__ = (p); \
42 if (me_failed(__me__ ## __LINE__)) return ES_FAILED; \
43 if (ME_GEN_ASSIGNED==(__me__ ## __LINE__))f=true; }
45#define GECODE_SET_ME_CHECK_VAL_B(modified, tell, f) \
47 ModEvent me = (tell); \
48 modified |= me_modified(me); \
49 if (ME_GEN_ASSIGNED==(me))f=true; \
50 GECODE_ME_CHECK(me); \
53namespace Gecode {
namespace Set {
namespace Rel {
55 template<
class VX,
class VY>
Set view for set variables
static ModEvent me_combine(ModEvent me1, ModEvent me2)
bool testSetEventLB(ModEvent me0, ModEvent me1, ModEvent me2)
bool testSetEventCard(ModEvent me0, ModEvent me1, ModEvent me2)
bool testSetEventUB(ModEvent me0, ModEvent me1, ModEvent me2)
bool testSetEventAnyB(ModEvent me0, ModEvent me1, ModEvent me2)
bool subsumesME(ModEvent me0, ModEvent me1, ModEvent me2, ModEvent me)
const Gecode::ModEvent ME_SET_GLB
Domain operation has changed the greatest lower bound.
const Gecode::ModEvent ME_SET_CARD
Domain operation has changed the variable cardinality.
const Gecode::ModEvent ME_SET_LUB
Domain operation has changed the least upper bound.
Gecode toplevel namespace
bool same(VarArgArray< Var > x, VarArgArray< Var > y)
Post propagator for SetVar SetOpType SetVar y
Post propagator for SetVar x
int ModEvent
Type for modification events.