30 operator T* ()
const noexcept {
45 operator bool () const noexcept {
54 return get() == other.get();
62 return !(*
this == other);
69 return get() ==
nullptr;
77 return get()->getRefCount() == 0;
85 return get()->getRefCount() == 1;
91 T*
get()
const noexcept {
99 void set(T* ptr) noexcept {
bool operator!=(const RefBase &other) const noexcept
Check if two refs are not the same.
Definition: RefBase.h:61
bool isUnique() const noexcept
Check if object has only one strong reference.
Definition: RefBase.h:83
RefBase(T *ptr) noexcept
Initializes object pointer with ptr.
Definition: RefBase.h:24
RefBase() noexcept
Initializes object pointer to nullptr.
Definition: RefBase.h:19
Generic base class of a pointer for reference counted objects.
Definition: RefBase.h:15
T & operator*() const noexcept
Dereference operator.
Definition: RefBase.h:37
T * m_ptr
Raw pointer.
Definition: RefBase.h:104
bool isExpired() const noexcept
Check is object is dead.
Definition: RefBase.h:75
void set(T *ptr) noexcept
Replace object pointer without any checks or reference management.
Definition: RefBase.h:99
bool isNull() const noexcept
Check for nullptr.
Definition: RefBase.h:68
bool operator==(const RefBase &other) const noexcept
Check if two refs are the same.
Definition: RefBase.h:53