14#ifndef ROOT_RMakeUnique
15#define ROOT_RMakeUnique
19#if __cplusplus < 201402L && !defined(_MSC_VER)
33 using array = std::unique_ptr<T[]>;
35template <
typename T,
size_t N>
45template <
typename T,
typename... Args>
48 return std::unique_ptr<T>(
new T(std::forward<Args>(args)...));
54 return std::unique_ptr<T>(
new typename std::remove_extent<T>::type[size]());
57template <
typename T,
typename... Args>
typedef void((*Func_t)())
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
std::unique_ptr< T[]> array
std::unique_ptr< T > scalar