40 template<
class A,
class B>
45 template<
class A,
class B>
51 else if (
x0.max() <= 0)
59 template<
class A,
class B>
64 template<
class A,
class B>
67 return new (home)
Abs<A,B>(home,*
this);
70 template<
class A,
class B>
76 else if (
x0.max() <= 0)
Base-class for both propagators and branchers.
Abs(Space &home, Abs &p)
Constructor for cloning p.
static ExecStatus post(Home home, A x0, B x1)
Post propagator for .
virtual ExecStatus propagate(Space &home, const ModEventDelta &med)
Perform propagation.
virtual Actor * copy(Space &home)
Create copy during cloning.
Home class for posting propagators
MixBinaryPropagator(Space &home, MixBinaryPropagator &p)
ExecStatus ES_SUBSUMED(Propagator &p)
Propagator p is subsumed
int ModEventDelta
Modification event deltas.
#define GECODE_ME_CHECK(me)
Check whether modification event me is failed, and forward failure.
const Gecode::PropCond PC_FLOAT_BND
Propagate when minimum or maximum of a view changes.
Gecode toplevel namespace
void abs(Home home, FloatVar x0, FloatVar x1)
Post propagator for .
@ ES_OK
Execution is okay.
@ ES_FIX
Propagation has computed fixpoint.