|
Range primitives | |||||||||||||||||
|
|
Range concepts | |||||||||||||||||||
|
Range factories | |||||||||
|
Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
Helper items | |||||||||||||||||
|
Defined in header <ranges> | ||
template<ranges::sized_range R> using range_size_t= decltype(ranges::size(std::declval<R&>())); | (1) | (since C++20) |
template<ranges::range R> using range_difference_t=std::iter_difference_t<ranges::iterator_t<R>>; | (2) | (since C++20) |
template<ranges::range R> using range_value_t=std::iter_value_t<ranges::iterator_t<R>>; | (3) | (since C++20) |
R
.R
.R | - | arange type or asized_range type |
(C++20)(C++20)(C++23)(C++20)(C++20)(C++20) | computes the associated types of an iterator (alias template)[edit] |
(C++20)(C++23)(C++20)(C++23) | obtains iterator and sentinel types of a range (alias template)[edit] |
obtains reference types of a range (alias template)[edit] |