diff options
Diffstat (limited to 'deimos/core')
-rw-r--r-- | deimos/core/allocator.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/deimos/core/allocator.h b/deimos/core/allocator.h index 07a214e..9e8dd87 100644 --- a/deimos/core/allocator.h +++ b/deimos/core/allocator.h @@ -116,6 +116,33 @@ public: std::forward<A3>(arg3));
}
+ template<typename T, typename A0, typename A1, typename A2, typename A3, typename A4>
+ constexpr gsl::owner<T*> New(
+ A0&& arg0, A1&& arg1, A2&& arg2, A3&& arg3, A4&& arg4,
+ const SourceLocation& source_location = {})
+ {
+ return NewInner<T>(source_location,
+ std::forward<A0>(arg0),
+ std::forward<A1>(arg1),
+ std::forward<A2>(arg2),
+ std::forward<A3>(arg3),
+ std::forward<A4>(arg4));
+ }
+
+ template<typename T, typename A0, typename A1, typename A2, typename A3, typename A4, typename A5>
+ constexpr gsl::owner<T*> New(
+ A0&& arg0, A1&& arg1, A2&& arg2, A3&& arg3, A4&& arg4, A5&& arg5,
+ const SourceLocation& source_location = {})
+ {
+ return NewInner<T>(source_location,
+ std::forward<A0>(arg0),
+ std::forward<A1>(arg1),
+ std::forward<A2>(arg2),
+ std::forward<A3>(arg3),
+ std::forward<A4>(arg4),
+ std::forward<A5>(arg5));
+ }
+
template<typename T>
void Delete(gsl::owner<T*> t, const SourceLocation& source_location = {})
{
|