|
| pointer | get () |
| | Return the currently wrapped value or handle.
|
| const_pointer | get () const |
| | Return the currently wrapped value or handle.
|
| deleter_type & | get_deleter () |
| | Return the deleter used when resetting the wrapped pointer.
|
| const deleter_type & | get_deleter () const |
| | Return the deleter used when resetting the wrapped pointer.
|
|
| operator bool () const |
| | Check whether the wrapper currently owns a non-null pointer.
|
| pointer * | operator& () |
| | Expose the stored pointer address for C APIs that write handles.
|
| pointer * | operator& () const |
| | Expose the stored pointer address for C APIs that write handles.
|
| std::add_lvalue_reference_t< element_type > | operator* () |
| | Dereference the managed pointer.
|
| std::add_lvalue_reference_t< element_type const > | operator* () const |
| | Dereference the managed pointer.
|
| pointer | operator-> () |
| | Access members of the managed pointer.
|
| const_pointer | operator-> () const |
| | Access members of the managed pointer.
|
|
uniq_ptr & | operator= (const uniq_ptr &other) noexcept=delete |
| template<class V> |
| uniq_ptr & | operator= (std::unique_ptr< V, deleter_type > &&uniq) noexcept |
| | Assign state from another instance while preserving ownership semantics.
|
| template<class V> |
| uniq_ptr & | operator= (uniq_ptr< V, deleter_type > &&other) noexcept |
| | Assign state from another instance while preserving ownership semantics.
|
| pointer | release () |
| | Release the COM or platform reference owned by the pointer.
|
| void | reset (pointer p=pointer()) |
| | Reset the object to its initial empty state.
|
|
constexpr | uniq_ptr () noexcept=default |
| | Initialize an empty unique ownership wrapper.
|
|
| uniq_ptr (const uniq_ptr &other) noexcept=delete |
|
constexpr | uniq_ptr (std::nullptr_t) noexcept |
| | Construct an empty wrapper implicitly from nullptr, matching std::unique_ptr.
|
| template<class V> |
| | uniq_ptr (std::unique_ptr< V, deleter_type > &&uniq) noexcept |
| | Transfer compatible standard unique-pointer ownership implicitly.
|
| template<class V> |
| | uniq_ptr (uniq_ptr< V, deleter_type > &&other) noexcept |
| | Transfer compatible Sunshine unique-pointer ownership implicitly.
|
| template<class V> |
| | uniq_ptr (V *p) noexcept |
| | Explicitly construct a unique ownership wrapper.
|
template<typename T, typename D = std::default_delete<T>>
class util::uniq_ptr< T, D >
Unique pointer wrapper with customizable pointer and deleter types.