38 namespace Gecode {
namespace Iter {
namespace Ranges {
49 unsigned int size(I&
i);
52 template<
class I,
class J>
56 template<
class I,
class J>
60 template<
class I,
class J>
71 template<
class I,
class J>
86 template<
class I,
class J>
91 if ((i.min() == j.min()) && (i.max() == j.max())) {
99 template<
class I,
class J>
104 if (j.max() < i.min()) {
106 }
else if ((i.min() >= j.min()) && (i.max() <= j.max())) {
114 template<
class I,
class J>
119 if (j.max() < i.min()) {
121 }
else if (i.max() < j.min()) {
129 template<
class I,
class J>
135 if (j.max() < i.min()) {
137 }
else if (i.max() < j.min()) {
139 }
else if ((i.min() >= j.min()) && (i.max() <= j.max())) {
140 ++
i; disjoint =
false;
141 }
else if (i.max() <= j.max()) {
142 ++
i; disjoint =
false; subset =
false;
143 }
else if (j.max() <= i.max()) {
144 ++j; disjoint =
false; subset =
false;
bool equal(I &i, J &j)
Check whether range iterators i and j are equal.
First is subset of second iterator.
Gecode::IntArgs i(4, 1, 2, 3, 4)
unsigned int size(I &i)
Size of all ranges of range iterator i.
CompareStatus
Comapre two iterators with each other.
bool disjoint(I &i, J &j)
Check whether range iterators i and j are disjoint.
bool subset(I &i, J &j)
Check whether range iterator i is subset of range iterator j.
CompareStatus compare(I &i, J &j)
Check whether range iterator i is a subset of j, or whether they are disjoint.
Gecode toplevel namespace