[all-commits] [llvm/llvm-project] ee44dd: [libc++] Implement the underlying mechanism for ra...

Louis Dionne via All-commits all-commits at lists.llvm.org
Thu Aug 26 11:07:46 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ee44dd8062a26541808fc0d3fd5c6703e19f6016
      https://github.com/llvm/llvm-project/commit/ee44dd8062a26541808fc0d3fd5c6703e19f6016
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2021-08-26 (Thu, 26 Aug 2021)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__ranges/all.h
    A libcxx/include/__ranges/range_adaptor.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/module.modulemap
    A libcxx/test/libcxx/diagnostics/detail.headers/ranges/range_adaptor.module.verify.cpp
    A libcxx/test/std/ranges/range.adaptors/range.all/all.nodiscard.verify.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/all.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.transform/adaptor.nodiscard.verify.cpp
    A libcxx/test/std/ranges/range.adaptors/range.transform/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/types.h

  Log Message:
  -----------
  [libc++] Implement the underlying mechanism for range adaptors

This patch implements the underlying mechanism for range adaptors. It
does so based on http://wg21.link/p2387, even though that paper hasn't
been adopted yet. In the future, if p2387 is adopted, it would suffice
to rename `__bind_back` to `std::bind_back` and `__range_adaptor_closure`
to `std::range_adaptor_closure` to implement that paper by the spec.

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




More information about the All-commits mailing list