Namespaces
Variants

std::ranges::join_view<V>:: iterator <Const>:: satisfy

From cppreference.net
Ranges library
Range adaptors
constexpr void satisfy ( ) ;
(depuis C++20)
( exposition uniquement* )

Ignore les plages internes vides et initialise l'itérateur sous-jacent inner_ .

Soit la constante /*ref-is-glvalue*/ égale à std:: is_reference_v < ranges:: range_reference_t < Base >> .

Le corps de la fonction est équivalent à

auto update_inner = [this](const ranges::iterator_t<Base>& x) -> auto&&
{
    if constexpr (/*ref-is-glvalue*/)     // *x est une référence
        return *x;
    else
        return parent_->inner_./*emplace-deref*/(x);
};
for (; outer_ != ranges::end(parent_->base_); ++outer_)
{
    auto&& inner = update_inner(outer_);
    inner_ = ranges::begin(inner);
    if (inner_ != ranges::end(inner))
        return;
}
if constexpr (/*ref-is-glvalue*/)
    inner_ = InnerIter();

Paramètres

(aucun)

Valeur de retour

(aucun)