[libcxx-commits] [PATCH] D60368: Add bind_front function (P0356R5)

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Sep 16 14:57:52 PDT 2020


ldionne added inline comments.


================
Comment at: libcxx/include/functional:2964
+             class = _EnableIf<is_constructible<_VSTD::tuple<_Bound...>, _BoundArgs...>::value &&
+                               __all_true<is_move_constructible<_Bound>::value...>::value>>
+    explicit constexpr __perfect_forward_impl(_BoundArgs&&... __bound) :
----------------
zoecarver wrote:
> ldionne wrote:
> > If you used fold a expression like `(is_move_constructible<_Bound>::value && ...)`, I believe you could get rid of `__all_true` completely.
> I think I'm going to update this to use the following which will also allow me to get rid of `__all_true`:
> 
> ```
> std::is_move_constructible<std::tuple<_Bound...>>::value
> ```
To be clear, I don't think you'll need that at all anymore if you implement my suggestion of using `conjunction_v` below.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60368/new/

https://reviews.llvm.org/D60368



More information about the libcxx-commits mailing list