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

NAME
     std::ranges::join_view::begin - std::ranges::join_view::begin

Synopsis
	constexpr  auto begin();					     (1)
     (since
										C++20)
	constexpr auto begin() const

	    requires ranges::input_range<const V> &&			     (2)
     (since
										C++20)
		     std::is_reference_v<ranges::range_reference_t<const
	V>>;

	Returns  an  iterator to the first element of the join_view. Given base_
     is the
	underlying view,

	1) Equivalent to return /*iterator*/<true>{*this, ranges::begin(base_)};
     if
	__SimpleView<V> is satisfied and ranges::range_reference_t<V> is  refer-
     ence type.
	Otherwise,  equivalent	to return /*iterator*/<false>{*this, ranges::be-
     gin(base_)};.
	2)   Equivalent   to   return	/*iterator*/<true>{*this,    ranges::be-
     gin(base_)};.

Parameters
	(none)

Return value
	Iterator to the first element.

Notes
	When ranges::range_reference_t<V> is not a reference type, that is, def-
     erencing an
	iterator  of V returns a prvalue temporary, the join_view is only an in-
     put_range, in
	which case only single-pass iteration is supported, and  repeated  calls
     to begin()
	may not give meaningful results.

Example
	 This section is incomplete
	 Reason: no example

See also
	end	      returns an iterator or a sentinel to the end
	(C++20)       (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