std::ranges::chunk_by_view<V,Pred>::find_next, std::ranges::chunk_by_view<V,Pred>::find_prev
Contents |
std::ranges::chunk_by_view::next
constexpr ranges::iterator_t<V> /*find-next*/( ranges::iterator_t<V> current ); |
(since C++23) (exposition only*) |
|
Finds the next chunk.
Let
base_
and
pred_
be appropriate underlying data-members of chunk_by_view
.
Equivalent to
return ranges::next ( ranges::adjacent_find ( current, ranges::end(base_), std::not_fn(std::ref(*pred_)) ), 1, ranges::end(base_) );
The behavior is undefined if pred_.has_value() is false before the call to this function.
Used in the following non-static member functions:
- ranges::chunk_by_view::iterator::
operator++
Parameters
current | - | the iterator to current element in adapted view |
Return value
An iterator to the next chunk, as described above.
std::ranges::chunk_by_view::prev
constexpr ranges::iterator_t<V> /*find-prev*/( ranges::iterator_t<V> current ) |
(since C++23) (exposition only*) |
|
Finds the previous chunk.
Let
base_
and
pred_
be appropriate underlying data-members of chunk_by_view
.
Returns an iterator i
in the range [
ranges::begin(base_),
current)
such that:
- ranges::adjacent_find(i, current, std::not_fn(std::ref(*pred_))) is equal to current, and
- if
i
is not equal to ranges::begin(base_), then bool(std::invoke(*pred_, *ranges::prev(i), *i)) is false.
The behavior is undefined if before the call to this function current == ranges::begin(base_) or pred_.has_value() != true.
Used in the following non-static member functions:
- ranges::chunk_by_view::iterator::
operator--
Parameters
current | - | the iterator to current element in adapted view |
Return value
An iterator to the previous chunk, as described above.