slang/util/Iterator.h file

Helper classes for working with iterators.


namespace slang
Root namespace.


template<typename TIterator>
class slang::iterator_range
A range represented by an interator pair, begin and end.
template<typename DerivedT, typename IteratorCategoryT, typename T, typename DifferenceTypeT = std::ptrdiff_t, typename PointerT = T*, typename ReferenceT = T&>
class slang::iterator_facade
class slang::iterator_facade::ReferenceProxy


template<typename T>
auto make_range(T begin, T end) -> iterator_range<T>
Constructs an iterator_range from two provided iterators (inferring the types involved).
template<typename TContainer>
auto make_reverse_range(TContainer&& container) -> auto