Namespaces
Variants
Views
Actions

std::ranges::split_view<V,Pattern>::find_next

From cppreference.com
< cpp‎ | ranges‎ | split view
 
 
Ranges library
Range access
Range conversions
(C++23)

Range primitives



Dangling iterator handling
Range concepts
Views

Range factories
Range adaptors
Range generators
Range adaptor objects
Range adaptor closure objects
Helper items
(until C++23)(C++23)


 
 
constexpr ranges::subrange<ranges::iterator_t<V>>
    /*find_next*/( ranges::iterator_t<V> it );
(exposition only*)

Searches for the next occurrence of pattern in the underlying view. This function is for exposition only and its name is not normative.

Equivalent to:

auto [b, e] = ranges::search(ranges::subrange(it, ranges::end(base_)), pattern_);
 
if (b != ranges::end(base_) and ranges::empty(pattern_))
{
    ++b;
    ++e;
}
 
return {b, e};

[edit] Parameters

it - an iterator to the position at which to start the search

[edit] Return value

A subrange that represents the next position of the pattern, if it was found. An empty subrange otherwise.