memory: smart pointer factories should not be static (#72)

This commit is contained in:
Lukas 2025-08-14 17:16:28 +02:00 committed by GitHub
parent df6b8820c4
commit 69efb6291c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 11 additions and 19 deletions

View file

@ -83,9 +83,7 @@ namespace Hyprutils::Memory {
std::swap(m_ptr, ref.m_ptr);
}
CAtomicSharedPointer() noexcept {
; // empty
}
CAtomicSharedPointer() noexcept = default;
CAtomicSharedPointer(std::nullptr_t) noexcept {
; // empty
@ -262,9 +260,7 @@ namespace Hyprutils::Memory {
m_ptr = ref.m_ptr;
}
CAtomicWeakPointer() noexcept {
; // empty
}
CAtomicWeakPointer() noexcept = default;
CAtomicWeakPointer(std::nullptr_t) noexcept {
; // empty

View file

@ -27,3 +27,5 @@ namespace Hyprutils::Memory {
return std::bit_cast<To>(from);
}
}

View file

@ -61,9 +61,7 @@ namespace Hyprutils {
}
/* creates an empty shared pointer with no implementation */
CSharedPointer() noexcept {
; // empty
}
CSharedPointer() noexcept = default;
/* creates an empty shared pointer with no implementation */
CSharedPointer(std::nullptr_t) noexcept {
@ -184,7 +182,7 @@ namespace Hyprutils {
};
template <typename U, typename... Args>
static CSharedPointer<U> makeShared(Args&&... args) {
[[nodiscard]] inline CSharedPointer<U> makeShared(Args&&... args) {
return CSharedPointer<U>(new U(std::forward<Args>(args)...));
}

View file

@ -42,9 +42,7 @@ namespace Hyprutils {
}
/* creates an empty unique pointer with no implementation */
CUniquePointer() noexcept {
; // empty
}
CUniquePointer() noexcept = default;
/* creates an empty unique pointer with no implementation */
CUniquePointer(std::nullptr_t) noexcept {
@ -136,7 +134,7 @@ namespace Hyprutils {
};
template <typename U, typename... Args>
static CUniquePointer<U> makeUnique(Args&&... args) {
[[nodiscard]] inline CUniquePointer<U> makeUnique(Args&&... args) {
return CUniquePointer<U>(new U(std::forward<Args>(args)...));
}
}

View file

@ -102,9 +102,7 @@ namespace Hyprutils {
}
/* create an empty weak ptr */
CWeakPointer() {
;
}
CWeakPointer() noexcept = default;
~CWeakPointer() {
decrementWeak();