23 template <
typename... Args>
32 reset(other.release());
38 template <
typename U,
typename = std::enable_if_t<std::is_base_of_v<T, U>>>
46 void reset(T* newPtr =
nullptr)
override {
47 T* oldPtr = this->
ptr;
ObjectPtr(ObjectPtr &&other) noexcept
bool operator>(const ObjectPtr &other) const noexcept
ObjectPtr(const ObjectPtr &)=delete
bool operator<=(const ObjectPtr &other) const noexcept
bool operator<(const ObjectPtr &other) const noexcept
ObjectPtr & operator=(ObjectPtr &&other) noexcept
ObjectPtr & operator=(const ObjectPtr &)=delete
ObjectPtr(ObjectPtr< U > &&other) noexcept
ObjectPtr(Args &&... args)
bool operator==(const ObjectPtr &other) const noexcept
bool operator!=(const ObjectPtr &other) const noexcept
void reset(T *newPtr=nullptr) override
bool operator>=(const ObjectPtr &other) const noexcept
SmartPointer(T *p=nullptr)
Root namespace for everything the engine exposes.