36namespace Gecode {
namespace Iter {
namespace Ranges {
46 template<
class I,
bool strict=false>
77 unsigned int width(
void)
const;
82 template<
class I,
bool strict>
86 template<
class I,
bool strict>
92 template<
class I,
bool strict>
96 template<
class I,
bool strict>
101 template<
class I,
bool strict>
105 return i() && (
i.min() < 0);
107 return i() && (
i.min() <= 0);
111 template<
class I,
bool strict>
116 template<
class I,
bool strict>
125 template<
class I,
bool strict>
128 return static_cast<unsigned int>(
max()-
min()+1);
Range iterator for negative part of a range iterator.
Negative(void)
Default constructor.
unsigned int width(void) const
Return width of range (distance between minimum and maximum)
void init(I &i)
Initialize with ranges from i.
bool operator()(void) const
Test whether iterator is still at a range or done.
int min(void) const
Return smallest value of range.
void operator++(void)
Move iterator to next range (if possible)
int max(void) const
Return largest value of range.
const FloatNum min
Smallest allowed float value.
Gecode toplevel namespace
void min(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
void max(Home home, FloatVar x0, FloatVar x1, FloatVar x2)
Post propagator for .
Gecode::IntArgs i({1, 2, 3, 4})