home | help
std::ranges...w::iterator(3)   C++ Standard Libary  std::ranges...w::iterator(3)

NAME
     std::ranges::adjacent_transform_view::iterator	-     std::ranges::adja-
     cent_transform_view::iterator

Synopsis
	template< bool Const >	(since C++23)
	class /*iterator*/	(exposition only*)

	The return type of adjacent_transform_view::begin, and of
	adjacent_transform_view::end when  the	underlying  view  V  is  a  com-
     mon_range.

	The  type  /*iterator*/<true>  is  returned by the const-qualified over-
     loads. The type
	/*iterator*/<false> is returned by the non-const-qualified overloads.

Member types
	Member type	  Definition
			  const  ranges::adjacent_transform_view,  if  Const  is
     true.
	Parent (private)  Otherwise, ranges::adjacent_transform_view.
			  (exposition-only member type*)
	Base (private)	  const V, if Const is true. Otherwise, V.
			  (exposition-only member type*)
			    * std::input_iterator_tag, if

			  std::invoke_result_t</*maybe-const*/<Const, F>&,
					       /*REPEAT*/(ranges::range_refer-
     ence_t<Base>,
			  N)...>
			  is not a reference. Otherwise,
			    * let C denote the type
			      std::iterator_traits<iterator_t<Base>>::itera-
     tor_category.
	iterator_category	 * std::random_access_iterator_tag, if
				   std::derived_from<C, std::random_access_iter-
     ator_tag> is
				   true. Otherwise,
				 * std::bidirectional_iterator_tag, if
				   std::derived_from<C, std::bidirectional_iter-
     ator_tag> is
				   true. Otherwise,
				 * std::forward_iterator_tag, if
				   std::derived_from<C,      std::forward_itera-
     tor_tag> is true.
				   Otherwise,
				 * std::input_iterator_tag.
	iterator_concept  typename /*inner-iterator*/<Const>::iterator_concept;.
			  std::remove_cvref_t<std::invoke_result_t</*maybe-
     const*/<Const,
	value_type	  F>&,
					      /*REPEAT*/(ranges::range_refer-
     ence_t<Base>,
			  N)...>>;
	difference_type   ranges::range_difference_t<Base>

	Data members

	Member object	  Definition
	parent_ (private) A pointer of type Parent*.
			  (exposition-only member object*)
	inner_ (private)  An iterator of type inner_iterator.
			  (exposition-only member object*)

Member functions
	constructor	constructs an iterator
	(C++23) 	(public member function)
	operator*	accesses the element
	(C++23) 	(public member function)
	operator[]	accesses an element by index
	(C++23) 	(public member function)
	operator++
	operator++(int)
	operator--	advances or decrements the underlying iterators
	operator--(int) (public member function)
	operator+=
	operator-=
	(C++23)

Non-member functions
	operator==
	operator<
	operator>   compares the underlying iterators
	operator<=  (function)
	operator>=
	operator<=>
	(C++23)
	operator+   performs iterator arithmetic
	operator-   (function)
	(C++23)

Example
	 This section is incomplete
	 Reason: no example

References
	  * C++23 standard (ISO/IEC 14882:2023):

	  * 26.7.27.3 Class template adjacent_transform_view::iterator
	    [range.adjacent_transform.iterator]

See also
Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10	    std::ranges...w::iterator(3)

home | help