File range.hxx

class RangeIterator

Public Functions

RangeIterator() = default

Can be given a single range.

RangeIterator(int start, int end, RangeIterator *join = nullptr)
RangeIterator(int start, int end, const RangeIterator &join)
RangeIterator(const RangeIterator &r)
~RangeIterator()
void first()
void next()
bool isDone() const
inline int operator*()
inline RangeIterator &operator++()
inline RangeIterator operator++(int)
inline bool operator==(const RangeIterator &x) const
inline bool operator!=(const RangeIterator &x) const
bool intersects(const RangeIterator &other, bool all = true) const
bool intersects(int ind, bool all = true) const
RangeIterator &operator=(const RangeIterator &r)
RangeIterator &operator+=(const RangeIterator &r)
RangeIterator &operator-=(const RangeIterator &r)
inline int min() const
inline int max() const
inline RangeIterator *nextRange() const

Public Members

int ind

Public Static Functions

static inline RangeIterator end()

Private Members

int is = {1}
int ie = {0}
RangeIterator *n = {nullptr}
RangeIterator *cur = {nullptr}
int curend
bool delete_next = false