38 namespace Gecode {
namespace Int {
178 while (
i() && (
i.max() <
x))
185 while (
i() && (
i.max() <
x))
197 while (
i() && (
i.val() <
x))
204 while (
i() && (
i.val() <
x))
275 unsigned int width(
void)
const;
314 return x.min() == y.
min();
318 return x.min() < y.
min();
ModEvent inter_v(Space &home, I &i, bool depends=true)
Intersect domain with values described by i.
unsigned int width(void) const
Return width of range (distance between minimum and maximum)
unsigned int size(void) const
Return size (cardinality) of domain.
int min(void) const
Return minimum of domain.
bool before(const CachedView< View > &x, const CachedView< View > &y)
ViewRanges(void)
Default constructor.
void update(Space &home, bool share, ConstView &y)
Update this view to be a clone of view y.
int ModEvent
Type for modification events.
bool any(const Delta &d) const
Test whether arbitrary values got pruned.
ModEvent lq(Space &home, int n)
Restrict domain values to be less or equal than n.
ConstIntView(void)
Default constructor.
bool range(void) const
Test whether domain is a range.
ModEvent nq(Space &home, int n)
Restrict domain values to be different from n.
ModEvent narrow_r(Space &home, I &i, bool depends=true)
Replace domain by ranges described by i.
bool in(int n) const
Test whether n is contained in domain.
int max(void) const
Return maximum of domain.
const int max
Largest allowed integer value.
ModEvent minus_r(Space &home, I &i, bool depends=true)
Remove from domain the ranges described by i.
ModEvent le(Space &home, int n)
Restrict domain values to be less than n.
void init(const View &x)
Initialize with ranges for view x.
Range iterator for integer views.
const Gecode::ModEvent ME_INT_FAILED
Domain operation has resulted in failure.
bool same(const CachedView< View > &x, const CachedView< View > &y)
Gecode::IntArgs i(4, 1, 2, 3, 4)
int n
Number of negative literals for node type.
int val(void) const
Return assigned value (only if assigned)
ModEvent narrow_v(Space &home, I &i, bool depends=true)
Replace domain by values described by i.
ModEvent inter_r(Space &home, I &i, bool depends=true)
Intersect domain with ranges described by i.
void update(Space &home, bool share, ConstIntView &y)
Update this view to be a clone of view y.
int min(void) const
Return smallest value of range.
unsigned int regret_min(void) const
Return regret of domain minimum (distance to next larger value)
unsigned int width(void) const
Return width of domain (distance between maximum and minimum)
ModEvent gq(Space &home, int n)
Restrict domain values to be greater or equal than n.
ModEvent eq(Space &home, int n)
Restrict domain values to be equal to n.
int med(void) const
Return median of domain (greatest element not greater than the median)
ModEvent minus_v(Space &home, I &i, bool depends=true)
Remove from domain the values described by i.
Node * x
Pointer to corresponding Boolean expression node.
Generic domain change information to be supplied to advisors.
ModEvent gr(Space &home, int n)
Restrict domain values to be greater than n.
bool operator()(void) const
Test whether iterator is still at a range or done.
void operator++(void)
Move iterator to next range (if possible)
int max(void) const
Return largest value of range.
Gecode toplevel namespace
unsigned int regret_max(void) const
Return regret of domain maximum (distance to next smaller value)
const Gecode::ModEvent ME_INT_NONE
Domain operation has not changed domain.