16#ifndef ROOT7_TIndexIter
17#define ROOT7_TIndexIter
22namespace Experimental {
33template <
class REFERENCE,
35class TIndexIter:
public std::iterator<std::random_access_iterator_tag, REFERENCE, POINTER> {
114template <
class REFERENCE,
class POINTER>
117 return lhs.GetIndex() < rhs.GetIndex();
120template <
class REFERENCE,
class POINTER>
123 return lhs.GetIndex() > rhs.GetIndex();
126template <
class REFERENCE,
class POINTER>
129 return lhs.GetIndex() <= rhs.GetIndex();
132template <
class REFERENCE,
class POINTER>
135 return lhs.GetIndex() >= rhs.GetIndex();
138template <
class REFERENCE,
class POINTER>
141 return lhs.GetIndex() == rhs.GetIndex();
144template <
class REFERENCE,
class POINTER>
147 return lhs.GetIndex() != rhs.GetIndex();
Iterates over an index; the REFERENCE is defined by the REFERENCE template parameter.
TIndexIter operator++(int) noexcept
i++
TIndexIter & operator+=(int d) noexcept
TIndexIter operator--(int) noexcept
static constexpr size_t fgEndIndex
size_t GetIndex() const noexcept
Get the current index value.
TIndexIter operator-(int d) noexcept
TIndexIter & operator-=(int d) noexcept
TIndexIter operator+(int d) noexcept
TIndexIter & operator++() noexcept
TIndexIter & operator--() noexcept
–i
bool operator<(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
bool operator==(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
bool operator!=(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
bool operator>=(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
bool operator<=(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
bool operator>(TIndexIter< REFERENCE, POINTER > lhs, TIndexIter< REFERENCE, POINTER > rhs) noexcept
Namespace for new ROOT classes and functions.