A smart pointer class that provides unique ownership semantics.
More...
#include <UniquePtr.hpp>
Inherits std::default_delete< value_type >.
|
pointer | get () const |
| Gets the managed raw pointer. More...
|
|
| operator bool () const |
| Conversion operator to check if the pointer is valid. More...
|
|
reference | operator* () const |
| Dereference operator. More...
|
|
pointer | operator-> () const |
| Member access operator. More...
|
|
template<jsonifier::concepts::unique_ptr_t value_type_new> |
unique_ptr & | operator= (value_type_new &&other) |
| Move assignment operator for related pointers. More...
|
|
template<jsonifier::concepts::pointer_t value_type_new> |
unique_ptr & | operator= (value_type_new newPtr) |
| Move assignment operator for raw pointer. More...
|
|
pointer | release () |
| Releases the managed pointer. More...
|
|
void | reset (pointer newPtr=nullptr) |
| Resets the managed pointer and invokes the deleter. More...
|
|
void | swap (unique_ptr &other) |
| Swaps the contents of two unique_ptr objects. More...
|
|
| unique_ptr () |
| Default constructor.
|
|
template<jsonifier::concepts::unique_ptr_t value_type_new> |
| unique_ptr (value_type_new &&other) |
| Move constructor for related pointers. More...
|
|
template<jsonifier::concepts::pointer_t value_type_new> |
| unique_ptr (value_type_new newPtr) |
| Constructor from a raw pointer. More...
|
|
| ~unique_ptr () |
| Destructor that releases the managed object.
|
|
◆ unique_ptr() [1/2]
template<typename value_type , typename deleter = std::default_delete<value_type>>
template<jsonifier::concepts::unique_ptr_t value_type_new>
◆ unique_ptr() [2/2]
template<typename value_type , typename deleter = std::default_delete<value_type>>
template<jsonifier::concepts::pointer_t value_type_new>
- Parameters
-
newPtr | the new ptr to manage. |
Definition at line 95 of file UniquePtr.hpp.
◆ commit()
template<typename value_type , typename deleter = std::default_delete<value_type>>
- Parameters
-
other | the new pointer value to commit. |
Definition at line 162 of file UniquePtr.hpp.
◆ get()
template<typename value_type , typename deleter = std::default_delete<value_type>>
◆ getDeleter()
template<typename value_type , typename deleter = std::default_delete<value_type>>
◆ operator bool()
template<typename value_type , typename deleter = std::default_delete<value_type>>
- Returns
true
if the pointer is valid, false
otherwise.
Definition at line 107 of file UniquePtr.hpp.
◆ operator*()
template<typename value_type , typename deleter = std::default_delete<value_type>>
- Returns
- a reference to the managed object.
Definition at line 113 of file UniquePtr.hpp.
◆ operator->()
template<typename value_type , typename deleter = std::default_delete<value_type>>
◆ operator=() [1/2]
template<typename value_type , typename deleter = std::default_delete<value_type>>
template<jsonifier::concepts::unique_ptr_t value_type_new>
◆ operator=() [2/2]
template<typename value_type , typename deleter = std::default_delete<value_type>>
template<jsonifier::concepts::pointer_t value_type_new>
◆ release()
template<typename value_type , typename deleter = std::default_delete<value_type>>
◆ reset()
template<typename value_type , typename deleter = std::default_delete<value_type>>
- Parameters
-
newPtr | the new raw pointer to manage. |
Definition at line 139 of file UniquePtr.hpp.
◆ swap()
template<typename value_type , typename deleter = std::default_delete<value_type>>
The documentation for this class was generated from the following file: