فهرست منبع

AK: Add adopt_own() to create a NonnullOwnPtr<T> from a T&

Andreas Kling 5 سال پیش
والد
کامیت
806d3d8e79
1فایلهای تغییر یافته به همراه7 افزوده شده و 0 حذف شده
  1. 7 0
      AK/NonnullOwnPtr.h

+ 7 - 0
AK/NonnullOwnPtr.h

@@ -167,6 +167,12 @@ private:
     T* m_ptr = nullptr;
     T* m_ptr = nullptr;
 };
 };
 
 
+template<typename T>
+inline NonnullOwnPtr<T> adopt_own(T& object)
+{
+    return NonnullOwnPtr<T>(NonnullOwnPtr<T>::Adopt, object);
+}
+
 template<class T, class... Args>
 template<class T, class... Args>
 inline NonnullOwnPtr<T>
 inline NonnullOwnPtr<T>
 make(Args&&... args)
 make(Args&&... args)
@@ -195,5 +201,6 @@ inline void swap(NonnullOwnPtr<T>& a, NonnullOwnPtr<U>& b)
 
 
 }
 }
 
 
+using AK::adopt_own;
 using AK::make;
 using AK::make;
 using AK::NonnullOwnPtr;
 using AK::NonnullOwnPtr;