std::ranges::transform_view<V,F>::iterator<Const>::iterator
/*iterator*/() requires std::default_initializable<ranges::iterator_t<Base>> = default; |
(1) | (since C++20) |
constexpr /*iterator*/( Parent& parent, ranges::iterator_t<Base> current ); |
(2) | (since C++20) |
constexpr /*iterator*/( /*iterator*/<!Const> i ) requires Const && std::convertible_to<ranges::iterator_t<V>, ranges::iterator_t<Base>>; |
(3) | (since C++20) |
Construct an iterator.
1) Default constructor.
Value-initializes the underlying iterator, and initializes the pointer to parent
transform_view
with
nullptr
.
2) Initializes the underlying iterator with
std::move(current)
, and the pointer to parent with
std::addressof(parent)
.
3) Conversion from
/*iterator*/<false>
to
/*iterator*/<true>
. Move constructs corresponding members.
Parameters
parent | - | a (possibly const-qualified) std::ranges::transform_view |
current | - | an iterator into (possibly const-qualified) V |
i | - | an /*iterator*/<false> |
Example
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/transform_view/iterator/iterator