This commit is contained in:
@@ -2,8 +2,7 @@
|
||||
#define ARBUTILS_BORROWEDPTR_HPP
|
||||
|
||||
namespace Arbutils::Memory {
|
||||
template <class>
|
||||
class NonNullBorrowedPtr;
|
||||
template <class> class NonNullBorrowedPtr;
|
||||
|
||||
template <class T> class BorrowedPtr {
|
||||
T* _ptr;
|
||||
@@ -16,9 +15,7 @@ namespace Arbutils::Memory {
|
||||
inline constexpr const T* GetUnsafe() const noexcept { return _ptr; }
|
||||
inline constexpr bool IsNull() const noexcept { return _ptr == nullptr; }
|
||||
|
||||
inline NonNullBorrowedPtr<T> GetNonNull() const {
|
||||
return NonNullBorrowedPtr<T>(_ptr);
|
||||
}
|
||||
inline NonNullBorrowedPtr<T> GetNonNull() const { return NonNullBorrowedPtr<T>(_ptr); }
|
||||
|
||||
T* operator->() noexcept { return _ptr; }
|
||||
T* operator->() const noexcept { return _ptr; }
|
||||
|
||||
@@ -4,8 +4,7 @@
|
||||
#include "BorrowedPtr.hpp"
|
||||
|
||||
namespace Arbutils::Memory {
|
||||
template <class>
|
||||
class BorrowedPtr;
|
||||
template <class> class BorrowedPtr;
|
||||
|
||||
template <class T> class NonNullBorrowedPtr {
|
||||
private:
|
||||
@@ -18,9 +17,7 @@ namespace Arbutils::Memory {
|
||||
inline constexpr T* GetUnsafe() noexcept { return _ptr; }
|
||||
inline constexpr const T* GetUnsafe() const noexcept { return _ptr; }
|
||||
|
||||
inline BorrowedPtr<T> GetOptional() const {
|
||||
return BorrowedPtr<T>(_ptr);
|
||||
}
|
||||
inline BorrowedPtr<T> GetOptional() const { return BorrowedPtr<T>(_ptr); }
|
||||
|
||||
T* operator->() noexcept { return _ptr; }
|
||||
T* operator->() const noexcept { return _ptr; }
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
#define ARBUTILS_NONNULLOWNPTR_HPP
|
||||
|
||||
#include "../Assert.hpp"
|
||||
#include "NonNullBorrowedPtr.hpp"
|
||||
#include "BorrowedPtr.hpp"
|
||||
#include "NonNullBorrowedPtr.hpp"
|
||||
|
||||
namespace Arbutils::Memory {
|
||||
template <class T> class NonNullOwnPtr {
|
||||
|
||||
Reference in New Issue
Block a user