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())) {
141 }
else if (
i.max() <= j.max()) {
143 }
else if (j.max() <=
i.max()) {
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