table of contents
std::ranges::join_view::iterator::iterator(3) | C++ Standard Libary | std::ranges::join_view::iterator::iterator(3) |
NAME¶
std::ranges::join_view::iterator::iterator - std::ranges::join_view::iterator::iterator
Synopsis¶
/*iterator*/() requires
std::default_initializable<OuterIter> && (1) (since
std::default_initializable<InnerIter> = default; C++20)
constexpr /*iterator*/( Parent& parent, OuterIter outer ); (2)
(since
C++20)
constexpr /*iterator*/( /*iterator*/<!Const> i )
requires Const && (3) (since
std::convertible_to<ranges::iterator_t<V>, OuterIter> &&
C++20)
std::convertible_to<ranges::iterator_t<InnerRng>, InnerIter>;
Construct an iterator.
1) Default constructor. Value-initializes the underlying iterators, and
initializes
the pointer to parent ranges::join_view with nullptr.
2) Initializes the underlying outer_ iterator with std::move(outer), and the
pointer
to parent parent_ with std::addressof(parent); then calls satisfy().
3) Conversion from /*iterator*/<false> to /*iterator*/<true>.
Move constructs the
underlying iterators outer_ with std::move(i.outer_), inner_ with
std::move(i.inner_), and underlying pointer to parent parent_ with
i.parent_.
Parameters¶
parent - a (possibly const-qualified) ranges::join_view
outer - an iterator into (possibly const-qualified)
ranges::iterator_t<Base>
i - an /*iterator*/<false>
Example¶
This section is incomplete
Reason: no example
Category:¶
* Todo no example
2024.06.10 | http://cppreference.com |