std::ranges::iota_view<W, Bound>::sentinel
| struct /*sentinel*/; |
(since C++20) | |
The return type of iota_view::end, used when the iota_view is bounded (i.e. Bound is not std::unreachable_sentinel_t) and Bound and W are not the same type.
The name of this class (shown here as /*sentinel*/) is unspecified.
Typical implementation holds one data member of type Bound (shown here as bound_), typically a number.
Member functions
std::ranges::iota_view::sentinel::sentinel
| /*sentinel*/() = default; |
(1) | (since C++20) |
| constexpr explicit /*sentinel*/( Bound bound ); |
(2) | (since C++20) |
Non-member functions
In the following descriptions, value_ is an exposition-only data member of iterator from which its operator* copies.
operator==(std::ranges::iota_view::iterator, std::ranges::iota_view::sentinel)
| friend constexpr bool operator==( const /*iterator*/& x, const /*sentinel*/& y ); |
(since C++20) | |
Equivalent to: return x.value_ == y.bound_;.
The != operator is synthesized from operator==.
This function is not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when sentinel is an associated class of the arguments.
operator-(std::ranges::iota_view::iterator, std::ranges::iota_view::sentinel)
| friend constexpr std::iter_difference_t<W> operator-(const /*iterator*/& x, const /*sentinel*/& y) |
(1) | (since C++20) |
| friend constexpr std::iter_difference_t<W> operator-(const /*sentinel*/& x, const /*iterator*/& y) |
(2) | (since C++20) |
These functions are not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when sentinel is an associated class of the arguments.