std::ranges::enumerate_view<V>::sentinel

From cppreference.com
 
 
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)


 
 
template< bool Const >
class /*sentinel*/;        // exposition only
(since C++23)

The return type of enumerate_view::end when the underlying view is not a common_range.

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

The name of this class template (shown here as /*sentinel*/) is unspecified.

Data members

Typical implementations of /*sentinel*/ hold only one non-static data member: a sentinel end_ (the name is for exposition purposes only) of type ranges::sentinel_t<Base> (see below).

Member types

Member type Definition
Base (private) const V if Const is true, otherwise V. The name is for exposition only.

Member functions

constructs a sentinel
(public member function)
(C++23)
returns a sentinel indicating the end of a range
(public member function)

Non-member functions

compares a sentinel with an iterator returned from enumerate_view::begin
(function)
(C++23)
computes the distance between a sentinel and an iterator returned from enumerate_view::begin
(function)

Example

References

  • C++23 standard (ISO/IEC 14882:2023):
  • 26.7.23.4 Class template enumerate_view::sentinel [range.enumerate.sentinel]

See also