From b18f73b9494d22b9e0727e664af358768be63440 Mon Sep 17 00:00:00 2001 From: gibbed Date: Wed, 30 Jun 2021 02:29:42 -0500 Subject: [PATCH] [Kernel] Add make_object template. --- src/xenia/kernel/xobject.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/xenia/kernel/xobject.h b/src/xenia/kernel/xobject.h index aaf11c881..11d8ecb3c 100644 --- a/src/xenia/kernel/xobject.h +++ b/src/xenia/kernel/xobject.h @@ -348,6 +348,12 @@ bool operator!=(std::nullptr_t _Left, const object_ref<_Ty>& _Right) noexcept { return (!(_Left == _Right)); } +template +std::enable_if_t::value, object_ref> make_object( + Args&&... args) { + return object_ref(new T(std::forward(args)...)); +} + template object_ref retain_object(T* ptr) { if (ptr) ptr->Retain();