std::ranges::join_with_view<V,Pattern>::iterator
template< bool Const > class /*iterator*/ |
(since C++23) |
The return type of join_with_view::begin
, and of join_with_view::end
when both the outer range V
and the inner range ranges::range_reference_t<V>
satisfy common_range
and the parent join_with_view
is a forward_range
.
If either V
or Pattern
is not a simple view, Const
is true for iterators returned from the const overloads, and false otherwise. If V
and Pattern
are simple views, Const
is true if and only if ranges::range_reference_t<V>
is a reference.
The name of this class template (shown here as /*iterator*/
) is unspecified.
Member types
Member type | Definition |
---|---|
Parent (private) |
const join_view<V> if Const is true , otherwise join_view<V> . The name is for exposition only. |
Base (private) |
const V if Const is true , otherwise V . The name is for exposition only. |
InnerBase (private) |
ranges::range_reference_t<Base> . The name is for exposition only. |
PatternBase (private) |
const Pattern if Const is true , otherwise Pattern . The name is for exposition only. |
iterator_concept |
|
iterator_category |
Defined only if std::common_reference_t<ranges::range_reference_t<InnerBase>, ranges::range_reference_t<PatternBase>> is not an lvalue reference;
|
value_type |
std::common_type_t<ranges::range_value_t<InnerBase>, ranges::range_value_t<PatternBase>> |
difference_type |
std::common_type_t<ranges::range_difference_t<Base>, ranges::range_difference_t<InnerBase>, ranges::range_difference_t<PatternBase>> |
Member functions
(C++23)
|
constructs an iterator (public member function) |
(C++23)
|
accesses the element (public member function) |
(C++23)
|
advances or decrements the underlying iterators (public member function) |
Non-member functions
(C++23)
|
compares the underlying iterators (function) |
(C++23)
|
casts the result of dereferencing the underlying iterator to its associated rvalue reference type (function) |
(C++23)
|
swaps the objects pointed to by two underlying iterators (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/ranges/join_with_view/iterator