70 static_assert(std::is_integral<T>::value,
"Only integral types are supported.");
82 TSeq(T theBegin, T theEnd, T theStep = 1):
155 return (other - *
this) > 0;
158 return other < *
this;
161 return !(*
this > other);
164 return !(other > *
this);
217 return TSeq<T>(begin, end, step);
231 std::ostringstream ret;
232 auto step = val->
step();
233 ret <<
"A sequence of values: " << *val->
begin() << ((step > 0) ?
" <= i < " :
" >= i > ") << *val->end();
235 ret <<
" in steps of " << step;
typename std::make_signed< T >::type difference_type
std::random_access_iterator_tag iterator_category
iterator(T start, T step)
bool operator>=(const iterator &other) const
iterator operator-(difference_type v) const
const T operator[](const difference_type &v) const
bool operator!=(const iterator &other) const
bool operator>(const iterator &other) const
iterator & operator-=(const difference_type &v)
iterator & operator+=(const difference_type &v)
difference_type operator-(const iterator &other) const
bool operator==(const iterator &other) const
bool operator<(const iterator &other) const
iterator operator+(difference_type v) const
bool operator<=(const iterator &other) const
A pseudo container class which is a generator of indices.
typename std::make_signed< T >::type difference_type
TSeq(T theBegin, T theEnd, T theStep=1)
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.