![]() |
Home | Libraries | People | FAQ | More |
boost::stl_interfaces::iterator_interface
// In header: <boost/stl_interfaces/iterator_interface.hpp> template<typename Derived, typename IteratorConcept, typename ValueType, typename Reference, typename Pointer, typename DifferenceType> struct iterator_interface { // types typedef ; typedef ; typedef ; typedef ; typedef ; typedef ; // public member functions template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D, typename Enable = v1_dtl::plus_eq<> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D, typename Enable = v1_dtl::plus_eq<> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; template<typename D> () ; };
A CRTP template that one may derive from to make defining iterators easier.
The template parameter D
for iterator_interface
may be an incomplete type. Before any member of the resulting specialization of iterator_interface
other than special member functions is referenced, D
shall be complete, and model std::derived_from<iterator_interface<D>>
.
iterator_interface
public member functionstemplate<typename D> () ;
template<typename D> () ;
template<typename D> ( i) ;
template<typename D, typename Enable = v1_dtl::plus_eq<> () ;
template<typename D> () ;
template<typename D> () ;
template<typename D> ( n) ;
template<typename D> ( i) ;
template<typename D, typename Enable = v1_dtl::plus_eq<> () ;
template<typename D> () ;
template<typename D> () ;
template<typename D> ( i) ;
template<typename D> ( other) ;