std::ranges::slide_view<V>::iterator

From cppreference.com
< cpp‎ | ranges‎ | slide view
 
 
Ranges library
Range adaptors
 
 
template< bool Const >
class /*iterator*/
(since C++23)
(exposition only*)

The return type of slide_view::begin, and of slide_view::end when the underlying view V is a common_range.

The type /*iterator*/<true> is returned by the const-qualified overloads. The type /*iterator*/<false> is returned by the non-const-qualified overloads.

Member types

Member type Definition
Base (private) const V if Const is true, otherwise V.
(exposition-only member type*)
iterator_category std::input_iterator_tag
iterator_concept
value_type decltype(views::counted(current_, n_))
difference_type ranges::range_difference_t<Base>

Data members

Member name Definition
current_ (private) ranges::iterator_t<Base>, holds an iterator to the first underlying element of the current window in slide_view
(exposition-only member object*)
last_ele_ (private)
(conditionally present)
ranges::iterator_t<Base>, holds an iterator to the one-past-end underlying element of the current window in slide_view. Present only if Base models /*slide-caches-first*/.
(exposition-only member object*)
n_ (private) ranges::range_difference_t<Base>, holds the window width of slide_view.
(exposition-only member object*)

Member functions

constructs an iterator
(public member function)
accesses the element
(public member function)
accesses an element by index
(public member function)
advances or decrements the underlying iterators
(public member function)

Non-member functions

compares the underlying iterators
(function)
performs iterator arithmetic
(function)

Example

References

  • C++23 standard (ISO/IEC 14882:2024):
  • 26.7.29.3 Class template slide_view::iterator [range.slide.iterator]

See also