std::ranges::chunk_view<V>::iterator

From cppreference.com
< cpp‎ | ranges‎ | chunk view
 
 
Ranges library
Range adaptors
 
std::ranges::chunk_view
Member functions
Classes for input_ranges
Deduction guides
outer-iterator
outer-iterator::value_type
inner-iterator
 
template< bool Const >
class /*iterator*/
(since C++23)
(exposition only*)

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

Present only if V models forward_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
Parent (private) const chunk_view if Const is true, otherwise chunk_view.
(exposition-only member type*)
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::take(ranges::subrange(current_, end_), 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 element of current chunk in the underlying sequence (i.e. the begin of a chunk).
(exposition-only member object*)
end_ (private) ranges::sentinel_t<Base>, holds a sentinel to the end of the underlying sequence.
(exposition-only member object*)
n_ (private) ranges::range_difference_t<Base>, holds initial number of elements in the chunk (the last chunk can be smaller).
(exposition-only member object*)
missing_ (private) ranges::range_difference_t<Base>, usually equals to ranges::advance(current_, n_, end_);.
(exposition-only member object*)

Member functions

constructs an iterator
(public member function)
returns an iterator to current element
(public member function)
accesses the element
(public member function)
accesses an element by index
(public member function)
advances or decrements the underlying iterator
(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.28.7 Class template chunk_view::iterator for forward ranges [range.chunk.fwd.iter]

See also