operator==,<=>(ranges::cartesian_product_view::iterator)
From cppreference.com
< cpp | ranges | cartesian product view | iterator
C++
Ranges library
|
Range primitives | |||||||
|
Range concepts | |||||||||||||||||||
|
Range factories | |||||||||
|
Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
Helper items | |||||||||||||||||
|
std::ranges::cartesian_product_view
Member functions | ||||
Deduction guides | ||||
Iterator | ||||
Member functions | ||||
Non-member functions | ||||
operator==(cartesian_product_view::iterator)
operator<=>(cartesian_product_view::iterator) |
||||
friend
constexpr
bool operator==
(
const
/*iterator*/
& x, const
/*iterator*/
& y )
requires std::equality_comparable < ranges::iterator_t < /*maybe-const*/ <Const, First>>> ; |
(1) | (since C++23) |
friend
constexpr
bool operator==
(
const
/*iterator*/
& x, std::default_sentinel_t
)
;
|
(2) | (since C++23) |
friend
constexpr
auto operator<=>
(
const
/*iterator*/
& x, const
/*iterator*/
& y )
requires /*all-random-access*/ <Const, First, Vs...> ; |
(2) | (since C++23) |
Compares two iterators or an iterator and a sentinel.
Let current_
denote the underlying tuple of iterators.
1) Equivalent to: return x.current_ == y.current_;
2) Returns true if
std::
get
<i>
(x.current_
)
==
ranges::end
(std::
get
<i>
(x.parent_
-
>bases_)
)
is true for any integer 0 ≤ i ≤ sizeof...(Vs). Otherwise, returns false
3) Equivalent to: return x.current_ <=> y.current_;
These functions are not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when std::ranges::cartesian_product_view::iterator<Const>
The !=
operator is synthesized from operator==
.
Parameters
x, y | - | iterators or sentinels to compare |
Return value
The result of comparison.
Example
This section is incomplete Reason: no example |
See also
(C++23)
|
compares a sentinel with an iterator returned from cartesian_product_view::begin (function) |