[libc++][ranges] Implement ranges::minmax and ranges::minmax_element
authorNikolas Klauser <nikolasklauser@berlin.de>
Wed, 13 Apr 2022 20:59:09 +0000 (22:59 +0200)
committerNikolas Klauser <nikolasklauser@berlin.de>
Thu, 14 Apr 2022 13:37:22 +0000 (15:37 +0200)
commit58d9ab70aef3d7ad5b34c525afc430e122409054
treea60dfa88ffd8ac44dddc4cede365af7b893c5ec2
parent0b55a8dc6fe81a9b3f8c67ec0b5192baa4bc80b8
[libc++][ranges] Implement ranges::minmax and ranges::minmax_element

Reviewed By: var-const, #libc, ldionne

Spies: sstefan1, ldionne, BRevzin, libcxx-commits, mgorny

Differential Revision: https://reviews.llvm.org/D120637
19 files changed:
libcxx/benchmarks/algorithms.bench.cpp
libcxx/docs/Status/Cxx20Issues.csv
libcxx/docs/Status/RangesAlgorithms.csv
libcxx/include/CMakeLists.txt
libcxx/include/__algorithm/minmax.h
libcxx/include/__algorithm/minmax_element.h
libcxx/include/__algorithm/ranges_minmax.h [new file with mode: 0644]
libcxx/include/__algorithm/ranges_minmax_element.h [new file with mode: 0644]
libcxx/include/__functional/identity.h
libcxx/include/algorithm
libcxx/include/module.modulemap
libcxx/include/type_traits
libcxx/test/libcxx/algorithms/alg.sorting/assert.min.max.pass.cpp [new file with mode: 0644]
libcxx/test/libcxx/algorithms/ranges_robust_against_copying_comparators.pass.cpp
libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
libcxx/test/libcxx/private_headers.verify.cpp
libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.minmax.pass.cpp [new file with mode: 0644]
libcxx/test/std/algorithms/alg.sorting/alg.min.max/ranges.minmax_element.pass.cpp [new file with mode: 0644]
libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp