Namespaces
Variants
Views
Actions

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

From cppreference.com
< cpp‎ | ranges‎ | chunk view
 
 
Ranges library
Range access
Range conversions
(C++23)

Range primitives



Dangling iterator handling
Range concepts
Views

Range factories
Range adaptors
Range generators
Range adaptor objects
Range adaptor closure objects
Helper items
(until C++23)(C++23)


 
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.

Contents

[edit] 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>

[edit] Data members

Member object 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*)

[edit] Member functions

constructs an iterator
(public member function)
(C++23)
returns an iterator to current element
(public member function)
(C++23)
accesses the element
(public member function)
accesses an element by index
(public member function)
advances or decrements the underlying iterator
(public member function) [edit]

[edit] Non-member functions

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

[edit] Example

[edit] References

  • C++23 standard (ISO/IEC 14882:2023):
  • 26.7.28.7 Class template chunk_view::iterator for forward ranges [range.chunk.fwd.iter]

[edit] See also