home | help
std::ranges..._view::begin(3)  C++ Standard Libary std::ranges..._view::begin(3)

NAME
     std::ranges::chunk_by_view::begin - std::ranges::chunk_by_view::begin

Synopsis
	constexpr /*iterator*/ begin();  (since C++23)

	Returns an iterator to the first element of the chunk_by_view.

	Equivalent to:

      ranges::iterator_t<V> iter;

      if (begin_.has_value())
	  iter = begin_.value();
      else
      {
	  iter = /*find_next*/(ranges::begin(base()));
	  begin_ = iter; // caching
      }

      return /*iterator*/(*this, ranges::begin(base()), iter);

	The  behavior  is  undefined  if the underlying predicate pred_ does not
     contain a
	value.

Parameters
	(none)

Return value
	Iterator to the first element.

Notes
	In order to provide the amortized constant-time complexity  required  by
     the range
	concept,  this	function caches the result within the data member begin_
     (the name is
	for exposition only) for use on subsequent calls.

Example
	 This section is incomplete
	 Reason: no example

See also
	end	      returns an iterator or a sentinel to the end
	(C++23)       (public member function)
	ranges::begin returns an iterator to the beginning of a range
	(C++20)       (customization point object)

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10	   std::ranges..._view::begin(3)

home | help