23 template <
typename Iterator>
60 Iterator begin()
const {
return mBegin; }
61 Iterator end()
const {
return mEnd; }
64 Iterator mBegin, mEnd;
70 typename Iterator =
decltype(std::begin(std::declval<Iterable>())),
71 typename ReverseIterator = std::reverse_iterator<Iterator>
76 ReverseIterator(std::end(range)),
77 ReverseIterator(std::begin(range)));