The <ranges> header from C++20's standard library. More...
Classes | |
interface | std::ranges::BidirectionalRange |
Specifies requirements of a Range type for which begin returns a type that models std::BidirectionalIterator. More... | |
interface | std::ranges::CommonRange |
Specifies requirements of a Range type for which begin and end return objects of the same type. More... | |
interface | std::ranges::ContiguousRange |
Specifies requirements of a Range type whose elements occupy adjacent locations in memory. More... | |
interface | std::ranges::ForwardRange |
Specifies requirements of a Range type for which begin returns a type that models std::ForwardIterator. More... | |
interface | std::ranges::InputRange |
Specifies requirements of a Range type for which begin returns a type that models std::InputIterator. More... | |
interface | std::ranges::OutputRange |
Specifies requirements of a Range type for which begin returns a type that models std::OutputIterator. More... | |
interface | std::ranges::RandomAccessRange |
Specifies requirements of a Range type for which begin returns a type that models std::RandomAccessIterator. More... | |
interface | std::ranges::Range |
Defines the requirements of a type that allows iteration over its elements by providing a begin iterator and an end sentinel. More... | |
interface | std::ranges::SizedRange |
Specifies the requirements of a Range type that knows its size in constant time with the size function. More... | |
interface | std::ranges::View |
Specifies the requirements of a Range type that has constant time copy, move and assignment operators. More... | |
interface | std::ranges::ViewableRange |
Specifies the requirements of a Range type that is either a std::ranges::View or an lvalue-reference. More... | |
Typedefs | |
using | std::ranges::begin = ::ranges::begin |
Alias for ranges::begin. Returns an iterator to the beginning of a range. | |
using | std::ranges::cbegin = ::ranges::cbegin |
Alias for ranges::cbegin. Returns an iterator to the beginning of a range. | |
using | std::ranges::cend = ::ranges::cend |
Alias for ranges::cend. Returns an iterator to the end of a range. | |
using | std::ranges::copy = ::ranges::copy |
Alias for ranges::copy. Copies a range of elements to a new location. | |
using | std::ranges::default_sentinel = ::ranges::default_sentinel |
Alias for ranges::default_sentinel. Empty sentinel type for use with iterator types that know the bound of their range. | |
using | std::ranges::empty = ::ranges::empty |
Alias for ranges::empty. Checks whether a range is empty. | |
using | std::ranges::end = ::ranges::end |
Alias for ranges::end. Returns an iterator to the end of a range. | |
using | std::ranges::equal = ::ranges::equal |
Alias for ranges::equal. Determines if two sets of elements are the same. | |
using | std::ranges::istream_range = ::ranges::istream_range |
Alias for ranges::istream_range. Istream adaptor for a Range type. | |
using | std::ranges::iter_move = ::ranges::iter_move |
Alias for ranges::iter_move. Casts the result of dereferencing an object to its associated rvalue reference type/. | |
using | std::ranges::iterator_range = ::ranges::iterator_range |
Alias for ranges::iterator_range. Iterator adaptor for a Range type. | |
using | std::ranges::iterator_t = ::ranges::iterator_t |
Alias for ranges::iterator_t. Obtains the iterator type of a range. | |
using | std::ranges::make_iterator_range = ::ranges::make_iterator_range |
Alias for ranges::make_iterator_range. Makes the iterator adaptor. | |
using | std::ranges::ostream_iterator = ::ranges::ostream_iterator |
Alias for ranges::ostream_iterator. Ostream adaptor for a Range type. | |
using | std::ranges::ostreambuf_iterator = ::ranges::ostreambuf_iterator |
Alias for ranges::ostreambuf_iterator. Output iterator that writes to std::basic_streambuf. | |
using | std::ranges::sentinel_t = ::ranges::sentinel_t |
Alias for ranges::sentinel_t. Obtains the sentinel type of a range. | |
using | std::ranges::size = ::ranges::size |
Alias for ranges::size. Obtains the size of a range whose size can be calculated in constant time. | |
The <ranges> header from C++20's standard library.