# Gecode::Iter::Ranges Namespace Reference

Range iterators. More...

## Classes | |

class | AddRange |

Range iterator for adding a single range to a range iterator. More... | |

class | SubRange |

Range iterator for subtracting a single range from a range iterator. More... | |

class | Append |

Range iterator for appending two range iterators More... | |

class | NaryAppend |

Range iterator for appending arbitrarily many iterators. More... | |

class | Array |

Range iterator for array of ranges More... | |

class | Cache |

Range iterator cache More... | |

class | Compl |

Range iterator for computing the complement (described by template arguments). More... | |

class | ComplVal |

Range iterator for computing the complement (described by values). More... | |

class | Diff |

Range iterator for computing set difference. More... | |

class | Empty |

Range iterator for empty range. More... | |

class | Inter |

Range iterator for computing intersection (binary). More... | |

class | NaryInter |

Range iterator for intersection of iterators. More... | |

class | RangeListIter |

Iterator over range lists. More... | |

class | Map |

Range iterator for mapping ranges. More... | |

class | Map< I, M, false > |

Specialized mapping of ranges for non-strict maps. More... | |

class | Map< I, M, true > |

Specialized mapping of ranges for strict maps. More... | |

class | MinMax |

Base for range iterators with explicit min and max. More... | |

class | Minus |

Range iterator for pointwise minus of a range iterator. More... | |

class | Negative |

Range iterator for negative part of a range iterator. More... | |

class | Offset |

Range iterator for pointwise offset (by some constant). More... | |

class | Positive |

Range iterator for positive part of a range iterator. More... | |

class | RangeList |

Range iterator for range lists More... | |

class | ScaleUp |

Range iterator for pointwise product with a positive integer. More... | |

class | ScaleDown |

Range iterator for pointwise division by a positive integer. More... | |

class | SingletonAppend |

Range iterator for appending a singleton with a range iterator More... | |

class | Singleton |

Range iterator for singleton range. More... | |

class | Size |

Range iterator with size counting More... | |

class | Union |

Range iterator for computing union (binary). More... | |

class | NaryUnion |

Range iterator for union of iterators. More... | |

class | ToValues |

Value iterator from range iterator. More... | |

## Enumerations | |

enum | CompareStatus { CS_SUBSET, CS_DISJOINT, CS_NONE } |

Comapre two iterators with each other. More... | |

## Functions | |

template<class I > | |

unsigned int | size (I &i) |

Size of all ranges of range iterator i. | |

template<class I , class J > | |

bool | equal (I &i, J &j) |

Check whether range iterators i and j are equal. | |

template<class I , class J > | |

bool | subset (I &i, J &j) |

Check whether range iterator i is subset of range iterator j. | |

template<class I , class J > | |

bool | disjoint (I &i, J &j) |

Check whether range iterators i and j are disjoint. | |

template<class I , class J > | |

CompareStatus | compare (I &i, J &j) |

Check whether range iterator i is a subset of j, or whether they are disjoint. |

## Detailed Description

Range iterators.