Add __is_inplace_type metafunction helper
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@276556 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/utility b/include/utility
index 74a28d8..66c3dd4 100644
--- a/include/utility
+++ b/include/utility
@@ -849,6 +849,11 @@
return in_place_tag(__in_place_tag{});
}
+template <class _Tp> struct __is_inplace_type : false_type {};
+template <> struct __is_inplace_type<in_place_t> : true_type {};
+template <class _Tp> struct __is_inplace_type<in_place_type_t<_Tp>> : true_type {};
+template <size_t _Idx> struct __is_inplace_type<in_place_index_t<_Idx>> : true_type {};
+
#endif // _LIBCPP_STD_VER > 14
_LIBCPP_END_NAMESPACE_STD