Namespaces
Variants

std::ranges::join_view<V>:: sentinel <Const>:: sentinel

From cppreference.net
Ranges library
Range adaptors
/*sentinel*/ ( ) = default ;
(1) (начиная с C++20)
constexpr explicit /*sentinel*/ ( Parent & parent ) ;
(2) (начиная с C++20)
constexpr /*sentinel*/ ( /*sentinel*/ < ! Const > i )

requires Const &&

std:: convertible_to < ranges:: sentinel_t < V > , ranges:: sentinel_t < Base >> ;
(3) (начиная с C++20)

Создает стражевой элемент.

1) Конструктор по умолчанию. Выполняет value-инициализацию базового сторожевого элемента.
2) Инициализирует базовый сторожевой элемент end_ с помощью ranges:: end ( parent. base_ ) .
3) Преобразование из /*sentinel*/ < false > в /*sentinel*/ < true > . Перемещающее конструирование базового стражника end_ с помощью std :: move ( i. end_ ) .

Параметры

родительский - (возможно const-квалифицированный) ranges::join_view
i - /*sentinel*/ < false >

Пример