Namensräume
Varianten
Aktionen

std::ranges::chunk_by_view<V,Pred>::find_next, std::ranges::chunk_by_view<V,Pred>::find_prev

Von cppreference.com
 
 
Bereichsbibliothek
Range-Adaptoren
 
 

Inhalt

std::ranges::chunk_by_view::next

constexpr ranges::iterator_t<V>
    /*find-next*/( ranges::iterator_t<V> current );
(seit C++23)
(nur Exposition*)

Findet den nächsten Chunk.

Seien base_ und pred_ entsprechende zugrunde liegende Datenmember von chunk_by_view.

Äquivalent zu

return ranges::next
(
    ranges::adjacent_find
    (
        current, ranges::end(base_), std::not_fn(std::ref(*pred_))
    ),
    1, ranges::end(base_)
);

Das Verhalten ist undefiniert, wenn pred_.has_value() vor dem Aufruf dieser Funktion false ist.

Wird in den folgenden nicht-statischen Member-Funktionen verwendet

Parameter

current - Der Iterator auf das aktuelle Element in der angepassten Ansicht

Rückgabewert

Ein Iterator auf den nächsten Chunk, wie oben beschrieben.

std::ranges::chunk_by_view::prev

constexpr ranges::iterator_t<V>

    /*find-prev*/( ranges::iterator_t<V> current )

        requires ranges::bidirectional_range<V>;
(seit C++23)
(nur Exposition*)

Findet den vorherigen Chunk.

Seien base_ und pred_ entsprechende zugrunde liegende Datenmember von chunk_by_view.

Gibt einen Iterator i im Bereich [ranges::begin(base_)current) zurück, so dass

Das Verhalten ist undefiniert, wenn vor dem Aufruf dieser Funktion current == ranges::begin(base_) oder pred_.has_value() != true.

Wird in den folgenden nicht-statischen Member-Funktionen verwendet

Parameter

current - Der Iterator auf das aktuelle Element in der angepassten Ansicht

Rückgabewert

Ein Iterator auf den vorherigen Chunk, wie oben beschrieben.