[all-commits] [llvm/llvm-project] 36c746: [libc++][ranges] Implement `ranges::rotate`.

Konstantin Varlamov via All-commits all-commits at lists.llvm.org
Wed Aug 3 16:04:58 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 36c746ca2d5b325a7ac64135c1ff8774c06ab34c
      https://github.com/llvm/llvm-project/commit/36c746ca2d5b325a7ac64135c1ff8774c06ab34c
  Author: Konstantin Varlamov <varconst at apple.com>
  Date:   2022-08-03 (Wed, 03 Aug 2022)

  Changed paths:
    M libcxx/docs/Status/RangesAlgorithms.csv
    M libcxx/include/CMakeLists.txt
    R libcxx/include/__algorithm/algorithm_family.h
    M libcxx/include/__algorithm/inplace_merge.h
    M libcxx/include/__algorithm/iterator_operations.h
    M libcxx/include/__algorithm/move.h
    M libcxx/include/__algorithm/move_backward.h
    M libcxx/include/__algorithm/ranges_move.h
    A libcxx/include/__algorithm/ranges_rotate.h
    M libcxx/include/__algorithm/ranges_swap_ranges.h
    M libcxx/include/__algorithm/rotate.h
    M libcxx/include/__algorithm/stable_partition.h
    M libcxx/include/__algorithm/swap_ranges.h
    M libcxx/include/__iterator/reverse_iterator.h
    M libcxx/include/algorithm
    M libcxx/include/module.modulemap.in
    M libcxx/test/libcxx/private_headers.verify.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/ranges_rotate.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp

  Log Message:
  -----------
  [libc++][ranges] Implement `ranges::rotate`.

Also fix `ranges::stable_sort` and `ranges::inplace_merge` to support
proxy iterators now that their internal implementations can correctly
dispatch `rotate`.

Differential Revision: https://reviews.llvm.org/D130758




More information about the All-commits mailing list