/*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.
transform_view with nullptr.std::move(current), and the pointer to parent with std::addressof(parent)./*iterator*/<false> to /*iterator*/<true>. Move constructs corresponding members.| parent | - | a (possibly const-qualified) std::ranges::transform_view |
| current | - | an iterator into (possibly const-qualified) V |
| i | - | an /*iterator*/<false> |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/transform_view/iterator/iterator