libER 0.1.4.2
ELDEN RING API library
|
A refcounted pointer that models std::shared_ptr<T>. More...
#include <utility.hpp>
Public Member Functions | |
DLReferenceCountPtr (std::nullptr_t) noexcept | |
Construct a new DLReferenceCountPtr (std::nullopt). | |
template<class U > requires std::convertible_to<U*, T*> | |
DLReferenceCountPtr (U *raw) noexcept | |
Construct a new DLReferenceCountPtr (raw pointer). | |
DLReferenceCountPtr (const DLReferenceCountPtr &other) noexcept | |
Construct a new DLReferenceCountPtr object (copy). | |
template<class U > requires std::convertible_to<U*, T*> | |
DLReferenceCountPtr (const DLReferenceCountPtr< U > &other) noexcept | |
Construct a new DLReferenceCountPtr object (copy, pointer conversion). | |
DLReferenceCountPtr (DLReferenceCountPtr &&other) noexcept | |
Construct a new DLReferenceCountPtr object (move). | |
template<class U > requires std::convertible_to<U*, T*> | |
DLReferenceCountPtr (DLReferenceCountPtr< U > &&other) noexcept | |
Construct a new DLReferenceCountPtr object (move, pointer conversion). | |
template<class U > requires std::convertible_to<U*, T*> | |
DLReferenceCountPtr & | operator= (const DLReferenceCountPtr< U > &other) |
Copy assignment operator. | |
template<class U > requires std::convertible_to<U*, T*> | |
DLReferenceCountPtr & | operator= (DLReferenceCountPtr< U > &&other) |
Move assignment operator. | |
void | reset () |
Reset the owned pointer (and decrement reference count). | |
template<class U > requires std::convertible_to<U*, T*> | |
void | reset (U *raw) |
Replace the owned pointer (and decrement reference count). | |
void | swap (DLReferenceCountPtr &other) |
Swap for DLReferenceCountPtr. | |
T * | get () const noexcept |
Get the managed pointer. | |
T & | operator* () const noexcept |
Dereference the managed pointer. | |
T * | operator-> () const noexcept |
Member access for the managed object. | |
operator bool () const noexcept | |
Check if the managed pointer is not null. | |
A refcounted pointer that models std::shared_ptr<T>.
Use from::make_refcounted to create refcounted objects.
T | a class that derives from DLReferenceCountObject |
|
inlineexplicitnoexcept |
Construct a new DLReferenceCountPtr (raw pointer).
U | a class that derives from DLReferenceCountObject and is a common class with T |
raw | the raw pointer to own and manage |
|
inlinenoexcept |
Construct a new DLReferenceCountPtr object (copy).
other |
|
inlinenoexcept |
Construct a new DLReferenceCountPtr object (copy, pointer conversion).
U | other class that derives from DLReferenceCountObject and is a common class with T |
other |
|
inlinenoexcept |
Construct a new DLReferenceCountPtr object (move).
Does not modify the reference count.
other |
|
inlinenoexcept |
Construct a new DLReferenceCountPtr object (move, pointer conversion).
Does not modify the reference count.
U | another class that derives from DLReferenceCountObject and is a common class with T |
other |
|
inlinenoexcept |
Get the managed pointer.
|
inlineexplicitnoexcept |
Check if the managed pointer is not null.
|
inlinenoexcept |
Dereference the managed pointer.
|
inlinenoexcept |
Member access for the managed object.
|
inline |
Copy assignment operator.
U | another class that derives from DLReferenceCountObject and is a common class with T |
other |
|
inline |
Move assignment operator.
Does not modify the reference count.
U | another class that derives from DLReferenceCountObject and is a common class with T |
other |
|
inline |
Replace the owned pointer (and decrement reference count).
U | another class that derives from DLReferenceCountObject and is a common class with T |
raw | the raw pointer to own and manage |
|
inline |
Swap for DLReferenceCountPtr.
other |