std::ranges::join_view<V>::iterator<Const>::iterator
From cppreference.com
C++
Ranges library
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|||||||||||||||||
std::ranges::join_view
| Member functions | ||||
| Deduction guides | ||||
| Iterator | ||||
join_view::iterator::iterator | ||||
| Sentinel | ||||
|
/*iterator*/
(
) requires std::default_initializable
<OuterIter>
&&
std::default_initializable <InnerIter> = default ; |
(1) | (since C++20) |
|
constexpr
/*iterator*/
( Parent& parent, OuterIter outer )
;
|
(2) | (since C++20) |
|
constexpr
/*iterator*/
(
/*iterator*/
<
!Const> i )
requires Const &&
|
(3) | (since C++20) |
Constructs 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) Converts /*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 |