|
lsst.sphgeom gdcc65144bf+d801c9999e
|
#include <RangeSet.h>
Public Attributes | |
| std::uint64_t const * | p = nullptr |
Friends | |
| void | swap (Iterator &a, Iterator &b) |
| Iterator | operator+ (ptrdiff_t n, Iterator const &i) |
A constant iterator over the ranges (represented as 2-tuples) in a RangeSet.
RangeSet does not store an array of 2-tuples internally. But, ยง24.2.5 of the C++11 standard requires the following from constant forward iterators:
So, dereferencing a forward iterator cannot return by value, or return a reference to a member of the iterator itself. As a result, it seems impossible to provide more than an input iterator for container objects that do not store their values directly.
While this class only claims to be an input iterator, it nevertheless implements most random access iterator requirements. Dereferencing an iterator returns a tuple by value, and operator-> is omitted.