Lines Matching refs:T
25 template <typename T>
27 { using __single = ::std::unique_ptr<T>; };
29 template <typename T>
30 struct _Make_unique<T[]>
31 { using __array = ::std::unique_ptr<T[]>; };
33 template <typename T, size_t SIZE>
34 struct _Make_unique<T[SIZE]>
37 /// Create an object of type `T` and return it inside a std::unique_ptr.
38 template <typename T, typename... Args>
39 inline typename _Make_unique<T>::__single
42 return ::std::unique_ptr<T>(new T(::std::forward<Args>(args)...));
45 /// Allocate an array of type `T` and return it inside a std::unique_ptr.
46 template <typename T>
47 inline typename _Make_unique<T>::__array
50 return ::std::unique_ptr<T>(new typename std::remove_extent<T>::type[size]());
54 template <typename T, typename... Args>
55 inline typename _Make_unique<T>::__invalid