# Range iterators with virtual member functions

[Range iterators]

Collaboration diagram for Range iterators with virtual member functions:

## Detailed Description

A range iterator provides incremental access to a sequence of increasing ranges. Iterators with virtual member functions have to be used when they are combined dynamically, and the actual types hence cannot be specified as template arguments.Requires

```
#include "gecode/iter.hh"
```

## Classes | |

class | Gecode::Iter::Ranges::Virt::Compl< UMIN, UMAX > |

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

class | Gecode::Iter::Ranges::Virt::ComplVal |

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

class | Gecode::Iter::Ranges::Virt::Inter |

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

class | Gecode::Iter::Ranges::Virt::NaryInter |

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

class | Gecode::Iter::Ranges::Virt::Union |

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

class | Gecode::Iter::Ranges::Virt::NaryUnion |

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

class | Gecode::Iter::Ranges::Virt::Iterator |

Abstract base class for range iterators. More... | |

class | Gecode::Iter::Ranges::Virt::RangesTemplate< I > |

Adaptor class to virtualize any iterator. More... |