Range-v3
Range algorithms, views, and actions for the Standard Library
iterator.hpp File Reference

Classes

struct  ranges::v3::adl_advance_detail::advance_fn
 
struct  ranges::v3::back_inserter_fn
 
struct  ranges::v3::front_inserter_fn
 
struct  ranges::v3::iter_distance_compare_fn
 
struct  ranges::v3::iter_distance_fn
 
struct  ranges::v3::iter_enumerate_fn
 
struct  ranges::v3::iter_move_fn
 
struct  ranges::v3::iter_size_fn
 
struct  ranges::v3::iter_swap_fn
 
struct  ranges::v3::make_move_iterator_fn
 
struct  ranges::v3::make_move_sentinel_fn
 
struct  ranges::v3::move_into_fn
 
struct  ranges::v3::move_sentinel< S >
 
struct  ranges::v3::next_fn
 
struct  ranges::v3::prev_fn
 

Typedefs

template<typename Cont >
using ranges::v3::back_insert_iterator = basic_iterator< detail::back_insert_cursor< Cont >>
 
template<typename Cont >
using ranges::v3::front_insert_iterator = basic_iterator< detail::front_insert_cursor< Cont >>
 

Functions

template<typename Cur , typename Sent >
void ranges::v3::adl_advance_detail::advance (basic_iterator< Cur, Sent > &i, iterator_difference_t< basic_iterator< Cur, Sent >> n)
 
template<typename T >
void ranges::v3::adl_advance_detail::advance (T *&i, iterator_difference_t< T * > n)
 
template<typename I >
void ranges::v3::adl_advance_detail::advance_impl (I &i, iterator_difference_t< I > n, concepts::InputIterator *)
 
template<typename I >
void ranges::v3::adl_advance_detail::advance_impl (I &i, iterator_difference_t< I > n, concepts::BidirectionalIterator *)
 
template<typename I >
void ranges::v3::adl_advance_detail::advance_impl (I &i, iterator_difference_t< I > n, concepts::RandomAccessIterator *)
 
template<typename I >
reverse_iterator< I > ranges::v3::make_reverse_iterator (I i)
 
template<typename I , typename S , requires = (Sentinel<S, I>())>
bool ranges::v3::operator!= (move_iterator< S > const &i, move_sentinel< S > const &s)
 
template<typename I , typename S , requires = (Sentinel<S, I>())>
bool ranges::v3::operator!= (move_sentinel< S > const &s, move_iterator< S > const &i)
 
template<typename I , typename S , requires = (Sentinel<S, I>())>
bool ranges::v3::operator== (move_iterator< I > const &i, move_sentinel< S > const &s)
 
template<typename I , typename S , requires = (Sentinel<S, I>())>
bool ranges::v3::operator== (move_sentinel< S > const &s, move_iterator< S > const &i)
 

Variables

constexpr adl_advance_detail::advance_fn ranges::v3::advance {}
 
constexpr back_inserter_fn ranges::v3::back_inserter {}
 
constexpr front_inserter_fn ranges::v3::front_inserter {}
 
constexpr iter_distance_fn ranges::v3::iter_distance {}
 
constexpr iter_distance_compare_fn ranges::v3::iter_distance_compare {}
 
constexpr iter_enumerate_fn ranges::v3::iter_enumerate {}
 
constexpr iter_move_fn ranges::v3::iter_move {}
 
constexpr iter_size_fn ranges::v3::iter_size {}
 
constexpr iter_swap_fn ranges::v3::iter_swap {}
 
constexpr make_move_iterator_fn ranges::v3::make_move_iterator {}
 
constexpr make_move_sentinel_fn ranges::v3::make_move_sentinel {}
 
constexpr move_into_fn ranges::v3::move_into {}
 
constexpr next_fn ranges::v3::next {}
 
constexpr prev_fn ranges::v3::prev {}
 
constexpr adl_uncounted_recounted_detail::recounted_fn ranges::v3::recounted {}
 
constexpr adl_uncounted_recounted_detail::uncounted_fn ranges::v3::uncounted {}