34 #ifndef __GECODE_INT_VALSET_HH__
35 #define __GECODE_INT_VALSET_HH__
39 namespace Gecode {
namespace Int {
60 bool empty(
void)
const;
103 unsigned int width(
void)
const;
Node * x
Pointer to corresponding Boolean expression node.
unsigned int width(void) const
Return width of range (distance between minimum and maximum)
int max(void) const
Return largest value of range.
bool operator()(void) const
Test whether iterator is still at a range or done.
void operator++(void)
Move iterator to next range (if possible)
Ranges(const ValSet &vs)
Initialize.
int min(void) const
Return smallest value of range.
Class for storing values of already assigned views.
int size(void) const
Return size (number of values)
RangeList * fst
First element of range list.
bool subset(View x) const
Whether all values of x are included in the value set.
bool empty(void) const
Test whether set is empty.
int max(void) const
Return largest value (provided the set is not empty)
Iter::Ranges::CompareStatus compare(View x) const
Compare view x with value set.
void flush(void)
Flush entries.
void dispose(Space &home)
Dispose value set.
void update(Space &home, ValSet &vs)
Update value set during cloning.
int n
Number of stored values (integer precision is sufficient)
RangeList * lst
Last element of range list.
int min(void) const
Return smallest value (provided the set is not empty)
void add(Space &home, int v)
Add value v to value set.
Lists of ranges (intervals)
CompareStatus
Comapre two iterators with each other.