summaryrefslogtreecommitdiffhomepage
path: root/src/kernel/NeKit/OwnPtr.h
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-11-29 21:40:49 -0500
committerGitHub <noreply@github.com>2025-11-29 21:40:49 -0500
commite0e8acd3db4ba1d50384f26305c6cc9021652840 (patch)
tree2dbea485a392789fc67aa590f8a7afb9f263be3c /src/kernel/NeKit/OwnPtr.h
parent44ad26b648a79503303c596bb20a6995255dc630 (diff)
parentb456c928fecf78157270b052e441a427f06afdda (diff)
Merge pull request #94 from nekernel-org/dev
Vet.h and Ref.h
Diffstat (limited to 'src/kernel/NeKit/OwnPtr.h')
-rw-r--r--src/kernel/NeKit/OwnPtr.h15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/kernel/NeKit/OwnPtr.h b/src/kernel/NeKit/OwnPtr.h
index bec2813b..30c8f9eb 100644
--- a/src/kernel/NeKit/OwnPtr.h
+++ b/src/kernel/NeKit/OwnPtr.h
@@ -7,7 +7,7 @@
#pragma once
-#include <NeKit/Defines.h>
+#include <NeKit/Config.h>
#include <NeKit/KernelPanic.h>
#include <NeKit/Ref.h>
@@ -21,8 +21,8 @@ class NonNullRefPtr;
template <typename T>
class OwnPtr final {
public:
- OwnPtr() {}
- ~OwnPtr() { this->Delete(); }
+ OwnPtr() = default;
+ ~OwnPtr() { this->Reset(); }
OwnPtr& operator=(const OwnPtr&) = default;
OwnPtr(const OwnPtr&) = default;
@@ -38,9 +38,8 @@ class OwnPtr final {
return fCls;
}
- void Delete() {
+ void Reset() {
if (fCls) delete fCls;
-
fCls = nullptr;
}
@@ -50,15 +49,15 @@ class OwnPtr final {
Ref<T> AsRef() { return Ref<T>(fCls); }
- operator bool() { return fCls; }
+ explicit operator bool() { return fCls; }
bool operator!() { return !fCls; }
private:
- T* fCls;
+ T* fCls{nullptr};
};
template <typename T, typename... Args>
-inline OwnPtr<T> mm_make_own_ptr(Args... args) {
+inline OwnPtr<T> make_ptr(Args... args) {
OwnPtr<T> ret;
ret.template New<Args...>(forward(args)...);