std::ranges::view_interface
From cppreference.com
Defined in header <ranges>
|
||
template< class D > requires std::is_class_v<D> && std::same_as<D, std::remove_cv_t<D>> |
(since C++20) | |
std::ranges::view_interface
is a helper class template for defining a view interface.
view_interface
is typically used with CRTP:
class my_view : public std::ranges::view_interface<my_view> { public: auto begin() const { /*...*/ } auto end() const { /*...*/ } // empty() is provided if begin() returns a forward iterator // and end() returns a sentinel for it. };
Contents |
[edit] Member functions
returns whether the derived view is empty, provided only if it satisfies sized_range or forward_range (public member function) | |
(C++23) |
returns a constant iterator to the beginning of the range (public member function) |