43 namespace Gecode {
namespace Set {
50 SetVarImp::cardMin_full(Space& home) {
57 return notify(home, me, d);
61 SetVarImp::cardMax_full(Space& home) {
68 return notify(home, me, d);
72 SetVarImp::processLubChange(Space& home, SetDelta&
d) {
87 assert(d.glbMin() == 1);
88 assert(d.glbMax() == 0);
90 return notify(home, me, d);
94 SetVarImp::processGlbChange(Space& home, SetDelta& d) {
109 assert(d.lubMin() == 1);
110 assert(d.lubMax() == 0);
112 return notify(home, me, d);
135 SetVarImp::perform_copy(
Space& home,
bool share) {
136 return new (home)
SetVarImp(home,share,*
this);
const Gecode::ModEvent ME_SET_FAILED
Domain operation has resulted in failure.
const Gecode::ModEvent ME_SET_LUB
Domain operation has changed the least upper bound.
SetVarImp(Space &home, bool share, SetVarImp &x)
Constructor for cloning x.
int ModEvent
Type for modification events.
Finite integer set variable implementation.
unsigned int card(void) const
Return cardinality.
unsigned int size(void) const
Return size.
unsigned int cardMax(void) const
Return current cardinality maximum.
void become(Space &home, const BndSet &s)
Make this set equal to s.
static ModEvent me(const ModEventDelta &med)
Project modification event for this variable type from med.
unsigned int cardMin(void) const
Return current cardinality minimum.
const Gecode::ModEvent ME_SET_CGLB
Domain operation has changed the greatest lower bound and the cardinality.
const Gecode::ModEvent ME_SET_GLB
Domain operation has changed the greatest lower bound.
void update(Space &home, BndSet &x)
Update this set to be a clone of set x.
Base-class for Set-variable implementations.
Node * x
Pointer to corresponding Boolean expression node.
const Gecode::ModEvent ME_SET_CLUB
Domain operation has changed the least upper bound and the cardinality.
Gecode::ModEvent notify(Gecode::Space &home, Gecode::ModEvent me, Gecode::Delta &d)
Notify that variable implementation has been modified with modification event me and delta informatio...
Gecode toplevel namespace
const Gecode::ModEvent ME_SET_VAL
Domain operation has resulted in a value (assigned variable)
const Gecode::ModEvent ME_SET_CARD
Domain operation has changed the variable cardinality.
bool assigned(void) const
Test whether variable is assigned.