std::ranges::iota_view<W, Bound>::sentinel
From cppreference.com
                    
                                        
                    
                    
                                                            
                    struct /*sentinel*/;  | 
(exposition only*) | |
ranges::iota_view<W, Bound>::sentinel is the type of the reachable sentinels returned by end() of ranges::iota_view<W, Bound>.
Data members
| Member | Definition | 
 Bound bound_
 | 
 the sentinel value (exposition-only member object*)  | 
Member functions
std::ranges::iota_view::sentinel::sentinel
|   /*sentinel*/() = default;  | 
(1) | (since C++20) | 
|   constexpr explicit /*sentinel*/( Bound bound );  | 
(2) | (since C++20) | 
1) Value-initializes 
bound_ .Non-member functions
operator==(std::ranges::iota_view::iterator, std::ranges::iota_view::sentinel)
|   friend constexpr bool operator==( const /*iterator*/& x, const /*sentinel*/& y );  | 
(since C++20) | |
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.
Example
| This section is incomplete Reason: no example  |