diff options
Diffstat (limited to 'deps/v8/src/base/template-utils.h')
-rw-r--r-- | deps/v8/src/base/template-utils.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/deps/v8/src/base/template-utils.h b/deps/v8/src/base/template-utils.h index 4f082845d9..f222593e2d 100644 --- a/deps/v8/src/base/template-utils.h +++ b/deps/v8/src/base/template-utils.h @@ -98,6 +98,15 @@ struct make_void { template <class... Ts> using void_t = typename make_void<Ts...>::type; +// Corresponds to C++17's std::conjunction +template <class...> +struct conjunction : std::true_type {}; +template <class B> +struct conjunction<B> : B {}; +template <class B, class... Bn> +struct conjunction<B, Bn...> + : std::conditional_t<bool(B::value), conjunction<Bn...>, B> {}; + } // namespace base } // namespace v8 |