From 38729297f98f6abb154a6acd37b6c5a1b9dea134 Mon Sep 17 00:00:00 2001 From: Michael Lutz Date: Sun, 14 Apr 2019 16:36:06 +0200 Subject: Codechange: No need for AutoFreePtr if there's std::unique_ptr. --- src/core/alloc_type.hpp | 34 ---------------------------------- 1 file changed, 34 deletions(-) (limited to 'src/core') diff --git a/src/core/alloc_type.hpp b/src/core/alloc_type.hpp index 1da080d98..e351bf360 100644 --- a/src/core/alloc_type.hpp +++ b/src/core/alloc_type.hpp @@ -117,38 +117,4 @@ public: inline void operator delete[](void *ptr) { free(ptr); } }; -/** - * A smart pointer class that free()'s the pointer on destruction. - * @tparam T Storage type. - */ -template -class AutoFreePtr -{ - T *ptr; ///< Stored pointer. - -public: - AutoFreePtr(T *ptr) : ptr(ptr) {} - ~AutoFreePtr() { free(this->ptr); } - - /** - * Take ownership of a new pointer and free the old one if needed. - * @param ptr NEw pointer. - */ - inline void Assign(T *ptr) - { - free(this->ptr); - this->ptr = ptr; - } - - /** Dereference pointer. */ - inline T *operator ->() { return this->ptr; } - /** Dereference pointer. */ - inline const T *operator ->() const { return this->ptr; } - - /** Cast to underlaying regular pointer. */ - inline operator T *() { return this->ptr; } - /** Cast to underlaying regular pointer. */ - inline operator const T *() const { return this->ptr; } -}; - #endif /* ALLOC_TYPE_HPP */ -- cgit v1.2.3-54-g00ecf