summaryrefslogtreecommitdiffstats
path: root/src/corelib/global/q20algorithm.h
Commit message (Collapse)AuthorAgeFilesLines
* corelib: Fix typos in source code commentsJonas Kvinge2021-10-121-2/+2
| | | | | | Pick-to: 6.2 Change-Id: Ic78afb67143112468c6f84677ac88f27a74b53aa Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Short live namespace q20!Marc Mutz2021-08-161-0/+116
As proposed already for Qt 5 (then with q14 and q17), add reimplementations of C++20 library features into a q20 namespace. The advantage is that we can later just s/q20::/std::/ and be sure that a) the q20 functionality works (within reason) like the std counterparts and b) we don't have to re-indent the code after the replacement. Start with std::identity in q20functional.h, required by std::ranges::{any,all,none}_of() (ex ranges[1]) in q20algorithm.h, which I happen to require in QLibrary next. [1] We can't provide the nice range-based overloads (any_of(vector, pred)), yet, because that would require to reimplement all the range-related concepts, as the overloads are ambiguous if unconstrained. First, we should check whether we can't just depend on Nieber's ranges-v3 library instead. The q20 namespace is independent of this decision, as it's more universally useful (q20::remove_cvref comes to mind). Unlike in q14/q17 times, a single header, q20.h, would become unwieldy very soon, so use separate headers. Change-Id: I14b98c865e242d2dc9674bc1bff5f7a9e4db9940 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>