Files
2025-10-25 03:02:53 +03:00

4.6 KiB
Raw Permalink Blame History

[reverse.iter.cmp]

24 Iterators library [iterators]

24.5 Iterator adaptors [predef.iterators]

24.5.1 Reverse iterators [reverse.iterators]

24.5.1.8 Comparisons [reverse.iter.cmp]

🔗

template<class Iterator1, class Iterator2> constexpr bool operator==( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

1

#

Constraints: x.base() == y.base() is well-formed and convertible to bool.

2

#

Returns: x.base() == y.base().

🔗

template<class Iterator1, class Iterator2> constexpr bool operator!=( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

3

#

Constraints: x.base() != y.base() is well-formed and convertible to bool.

4

#

Returns: x.base() != y.base().

🔗

template<class Iterator1, class Iterator2> constexpr bool operator<( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

5

#

Constraints: x.base() > y.base() is well-formed and convertible to bool.

6

#

Returns: x.base() > y.base().

🔗

template<class Iterator1, class Iterator2> constexpr bool operator>( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

7

#

Constraints: x.base() < y.base() is well-formed and convertible to bool.

8

#

Returns: x.base() < y.base().

🔗

template<class Iterator1, class Iterator2> constexpr bool operator<=( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

9

#

Constraints: x.base() >= y.base() is well-formed and convertible to bool.

10

#

Returns: x.base() >= y.base().

🔗

template<class Iterator1, class Iterator2> constexpr bool operator>=( const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

11

#

Constraints: x.base() <= y.base() is well-formed and convertible to bool.

12

#

Returns: x.base() <= y.base().

🔗

template<class Iterator1, [three_way_comparable_with](cmp.concept#concept:three_way_comparable_with "17.12.4Concept three_­way_­comparable[cmp.concept]")<Iterator1> Iterator2> constexpr compare_three_way_result_t<Iterator1, Iterator2> operator<=>(const reverse_iterator<Iterator1>& x, const reverse_iterator<Iterator2>& y);

13

#

Returns: y.base() <=> x.base().

14

#

[Note 1:

The argument order in the Returns: element is reversed because this is a reverse iterator.

— end note]