std::ranges::adjacent_transform_view<V,F,N>::iterator

From cppreference.com
 
 
Ranges library
Range adaptors
 
 
template< bool Const >
class /*iterator*/
(since C++23)
(exposition only*)

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

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

Member types

Member type Definition
Parent (private) const ranges::adjacent_transform_view, if Const is true. Otherwise, ranges::adjacent_transform_view.
(exposition-only member type*)
Base (private) const V, if Const is true. Otherwise, V.
(exposition-only member type*)
iterator_category
std::invoke_result_t</*maybe-const*/<Const, F>&,
                     /*REPEAT*/(ranges::range_reference_t<Base>, N)...>
is not a reference. Otherwise,
iterator_concept typename /*inner-iterator*/<Const>::iterator_concept;.
value_type

std::remove_cvref_t<std::invoke_result_t</*maybe-const*/<Const, F>&,
                    /*REPEAT*/(ranges::range_reference_t<Base>, N)...>>;

difference_type ranges::range_difference_t<Base>

Data members

Member name 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

constructs an iterator
(public member function)
accesses the element
(public member function)
accesses an element by index
(public member function)
advances or decrements the underlying iterators
(public member function)

Non-member functions

compares the underlying iterators
(function)
performs iterator arithmetic
(function)

Example

References

  • C++23 standard (ISO/IEC 14882:2024):
  • 26.7.27.3 Class template adjacent_transform_view::iterator [range.adjacent_transform.iterator]

See also