[libc++][ranges] Implement `ranges::is_permutation`
authorNikolas Klauser <nikolasklauser@berlin.de>
Thu, 4 Aug 2022 17:54:13 +0000 (10:54 -0700)
committerKonstantin Varlamov <varconst@apple.com>
Thu, 4 Aug 2022 17:54:37 +0000 (10:54 -0700)
commit4038c859e58c12e997041927a87e880f2f3ef883
treeb32137f9d962fd0a2b73a81620fcb11a3fab28fb
parent010f329803c84e43ec15ffaff7b6e26b032cbcc6
[libc++][ranges] Implement `ranges::is_permutation`

Co-authored-by: Konstantin Varlamov <varconst@apple.com>
Differential Revision: https://reviews.llvm.org/D127194
18 files changed:
libcxx/docs/Status/RangesAlgorithms.csv
libcxx/include/CMakeLists.txt
libcxx/include/__algorithm/is_permutation.h
libcxx/include/__algorithm/ranges_is_permutation.h [new file with mode: 0644]
libcxx/include/__iterator/iterator_traits.h
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.nonmodifying/alg.is_permutation/ranges.is_permutation.pass.cpp [new file with mode: 0644]
libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort_constexpr.pass.cpp
libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/sort_constexpr_comp.pass.cpp
libcxx/test/std/algorithms/ranges_robust_against_differing_projections.pass.cpp
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/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp