![]() |
Home | Libraries | People | FAQ | More |
boost::stl_interfaces::v1::view_interface
// In header: <boost/stl_interfaces/view_interface.hpp> template<typename Derived, Contiguity> struct view_interface { // public member functions template<typename D> () ; template<typename D> () ; template<typename D, typename R> () ; template<typename D, typename R> () ; template<typename D, C = , typename Enable> () ; template<typename D, C = , typename Enable> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D, typename Enable = v1_dtl::decrementable_sentinel<> () ; template<typename D, typename Enable = v1_dtl::decrementable_sentinel<> () ; template<typename D> () ; template<typename D> () ; };
A CRTP template that one may derive from to make it easier to define std::ranges::view
-like types with a container-like interface. This is a pre-C++20 version of C++20's view_interface
(see [view.interface] in the C++ standard).
The template parameter D
for view_interface
may be an incomplete type. Before any member of the resulting specialization of view_interface
other than special member functions is referenced, D
shall be complete, and model both std::derived_from<view_interface<D>>
and std::view
.
view_interface
public member functionstemplate<typename D> () ;
template<typename D> () ;
template<typename D, typename R> () ;
template<typename D, typename R> () ;
template<typename D, C = , typename Enable> () ;
template<typename D, C = , typename Enable> () ;
template<typename D> () ;
template<typename D> () ;
template<typename D> () ;
template<typename D> () ;
template<typename D, typename Enable = v1_dtl::decrementable_sentinel<> () ;
template<typename D, typename Enable = v1_dtl::decrementable_sentinel<> () ;
template<typename D> ( n) ;
template<typename D> ( n) ;