Details
-
Task
-
Resolution: Fixed
-
P2: Important
-
None
-
None
-
2
-
67072a70a (dev)
-
Foundations Sprint 95
Description
The std::is_eq family of functions (https://en.cppreference.com/w/cpp/utility/compare/named_comparison_functions) can be considered part of the API of the std::_ordering types. As such, our own ordering types should support these free functions, too, and not just when compiling in C++20 mode.
In order to avoid ambiguities with the std:: functions, these operators should be implemented as hidden friends in each of the three Q*Ordering classes, not as one free function taking QPartialOrdering. That means they will not be candidates when the user writes std::is_eq, and don't cause ambiguities when the user uses unqualified name lookup on std::_ordering types.
Acceptance criteria:
- Each of the three Q*Ordering classes has the full set of six is_ functions as hidden friends
- These functions are documented and tested.
Attachments
Issue Links
- is required for
-
QTBUG-119108 Make Qt ordering types source-compatible to std::_ordering types
-
- Closed
-
For Gerrit Dashboard: QTBUG-119100 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
518064,12 | Q*Ordering: supply is_{lt,gt,n,}eq | dev | qt/qtbase | Status: MERGED | +2 | 0 |