[libc++][ranges] Implement `ranges::clamp`
authorNikolas Klauser <nikolasklauser@berlin.de>
Wed, 3 Aug 2022 23:30:50 +0000 (16:30 -0700)
committerKonstantin Varlamov <varconst@apple.com>
Thu, 4 Aug 2022 09:45:32 +0000 (02:45 -0700)
commita203acb9dd7227323d6161431225189d49917744
tree02d7205b8e438f3b5f30e192dd0249bfc9bb6d40
parentc8b2f3f51bd923afbf9d3ebd0823bce895629630
[libc++][ranges] Implement `ranges::clamp`

Differential Revision: https://reviews.llvm.org/D126193
14 files changed:
libcxx/docs/Status/RangesAlgorithms.csv
libcxx/include/CMakeLists.txt
libcxx/include/__algorithm/clamp.h
libcxx/include/__algorithm/ranges_clamp.h [new file with mode: 0644]
libcxx/include/algorithm
libcxx/include/module.modulemap.in
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.clamp/assert.ranges_clamp.pass.cpp [new file with mode: 0644]
libcxx/test/std/algorithms/alg.sorting/alg.clamp/ranges.clamp.pass.cpp [new file with mode: 0644]
libcxx/test/std/algorithms/ranges_robust_against_nonbool_predicates.pass.cpp
libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp