Namespaces
Variants
Views
Actions

std::ranges::zip_transform_view<F,Views...>::iterator<Const>::iterator

From cppreference.com
 
 
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)


 
 
/*iterator*/iterator() = default;
(1) (since C++23)
constexpr /*iterator*/( /*iterator*/<!Const> i )

    requires Const &&

             std::convertible_to</*ziperator*/<false>, /*ziperator*/<Const>>;
(2) (since C++23)
constexpr /*iterator*/( Parent& parent, /*ziperator*/<Const> inner );
(3) (exposition only*)

Construct an iterator.

1) Default constructor. Default-initializes the underlying iterators, and value-initializes the pointer to parent ranges::zip_transform_view with nullptr.
2) Conversion from /*iterator*/<false> to /*iterator*/<true>. Move constructs the underlying pointer to parent parent_ with i.parent_ and inner_ with std::move(i.inner_).
3) Initializes the pointer to parent parent_ with std::addressof(parent), and the underlying inner_ iterator with std::move(inner). This constructor is not accessible to users.

[edit] Parameters

i - an /*iterator*/<false>
parent - a (possibly const-qualified) ranges::zip_transform_view
inner - an iterator of type ziperator<Const>

[edit] Example