44 #define GECODE_SET_ME_CHECK_VAL(p,f) { \
45 ModEvent __me__ ## __LINE__ = (p); \
46 if (me_failed(__me__ ## __LINE__)) return ES_FAILED; \
47 if (ME_GEN_ASSIGNED==(__me__ ## __LINE__))f=true; }
49 #define GECODE_SET_ME_CHECK_VAL_B(modified, tell, f) \
51 ModEvent me = (tell); \
52 modified |= me_modified(me); \
53 if (ME_GEN_ASSIGNED==(me))f=true; \
54 GECODE_ME_CHECK(me); \
57 namespace Gecode {
namespace Set {
namespace Rel {
bool testSetEventAnyB(ModEvent me0, ModEvent me1, ModEvent me2)
const Gecode::ModEvent ME_SET_LUB
Domain operation has changed the least upper bound.
bool subsumesME(ModEvent me0, ModEvent me1, ModEvent me2, ModEvent me)
int ModEvent
Type for modification events.
const Gecode::ModEvent ME_SET_GLB
Domain operation has changed the greatest lower bound.
bool testSetEventLB(ModEvent me0, ModEvent me1, ModEvent me2)
bool testSetEventCard(ModEvent me0, ModEvent me1, ModEvent me2)
Gecode toplevel namespace
static ModEvent me_combine(ModEvent me1, ModEvent me2)
Combine modifications events me1 and me2.
bool testSetEventUB(ModEvent me0, ModEvent me1, ModEvent me2)
const Gecode::ModEvent ME_SET_CARD
Domain operation has changed the variable cardinality.