37namespace Gecode {
namespace Int {
namespace NValues {
69 if (
y.min() ==
x.size()) {
78 if (
x[i].assigned()) {
79 vs.
add(home,
x[i].val());
87 assert(
y.val() == vs.
size());
103 return new (home)
EqInt<VY>(home, *
this);
111 return sizeof(*this);
128 if (
y.max() == vs.size())
129 return all_in_valset(home);
134 disjoint(home,
r,dis,n_dis);
140 assert(
y.val() == vs.size());
int p
Number of positive literals for node type.
int n
Number of negative literals for node type.
Home class for posting propagators
void notice(Actor &a, ActorProperty p, bool duplicate=false)
Notice actor property.
static ExecStatus post(Home home, ViewArray< View > &x)
Post propagator for views x.
Equal to number of values propagator for integer views.
EqInt(Home home, ValSet &vs, ViewArray< IntView > &x, VY y)
Constructor for posting.
virtual Propagator * copy(Space &home)
Copy propagator during cloning.
virtual size_t dispose(Space &home)
Delete propagator and return its size.
static ExecStatus post(Home home, ViewArray< IntView > &x, VY y)
Post propagator for .
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
Number of values propagator for integer views base class.
static ExecStatus post(Home home, ViewArray< View > &x)
Post domain consistent propagator .
Class for storing values of already assigned views.
int size(void) const
Return size (number of values)
void add(Space &home, int v)
Add value v to value set.
Base-class for propagators.
ModEventDelta modeventdelta(void) const
Return the modification event delta.
bool assigned(void) const
Test whether view is assigned.
static ModEvent me(const ModEventDelta &med)
ExecStatus ES_SUBSUMED(Propagator &p)
void ignore(Actor &a, ActorProperty p, bool duplicate=false)
Ignore actor property.
int ModEventDelta
Modification event deltas.
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
#define GECODE_ES_CHECK(es)
Check whether execution status es is failed or subsumed, and forward failure or subsumption.
const Gecode::ModEvent ME_INT_VAL
Domain operation has resulted in a value (assigned variable)
const Gecode::ModEvent ME_INT_NONE
Domain operation has not changed domain.
Gecode toplevel namespace
Post propagator for SetVar SetOpType SetVar SetRelType r
Post propagator for SetVar SetOpType SetVar y
@ ES_OK
Execution is okay.
@ ES_NOFIX
Propagation has not computed fixpoint.
Post propagator for SetVar x