std::experimental::ranges::next

Header: <experimental/ranges/iterator>

Advances the iterator i n times, or until bound is reached, whichever comes first, and returns the advanced iterator.

# Declarations

namespace {
constexpr /* unspecified */ next = /* unspecified */;
}

(ranges TS) (customization point object)

Call signature
template< Iterator I >
constexpr I next( I i );
template< Iterator I >
constexpr I next( I i, ranges::difference_type_t<I> n );
template< Iterator I, Sentinel<I> S >
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 bound );

# 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 incompleteReason: no example

# See also