std::experimental::ranges::next(3)

NAME
std::experimental::ranges::next - std::experimental::ranges::next

Synopsis
   Defined in header <experimental/ranges/iterator>
   namespace {
                        (ranges TS)
       constexpr /* unspecified */ next = /* unspecified */; (customization point
                        object)
   }
   Call signature
   template< Iterator I > (1)
   constexpr I next( I i );
   template< Iterator I > (2)
   constexpr I next( I i, ranges::difference_type_t<I> n );
   template< Iterator I, Sentinel<I> S > (3)
   constexpr I next( I i, S bound );
   template< Iterator I, Sentinel<I> S >
   constexpr I next( I i, ranges::difference_type_t<I> n, S (4)
   bound );
   Advances the iterator i n times, or until bound is reached, whichever comes first,
   and returns the advanced iterator.
   1) Equivalent to ++i; return i;.
   2) Equivalent to ranges::advance(i, n); return i;.
   3) Equivalent to ranges::advance(i, bound); return i;.
   4) Equivalent to ranges::advance(i, n, bound); return i;.

Return value
   The advanced iterator.

Notes
   Even though omitting n for overload (2) behaves as if n is 1, omitting n for
   overload (4) effectively behaves as if n is infinity (always advance to bound).

Example
    This section is incomplete
    Reason: no example

See also
   next increment an iterator
   (C++11) (function template)
   advance advances an iterator by given distance
            (function template)
   prev decrement an iterator
            (function template)
            returns the distance between an iterator and a sentinel, or between the
   distance beginning and the end of a range
            (function template)

Category:
     * Todo no example