ICU 78.1 78.1 |
"Smart pointer" base class; do not use directly: useLocalPointer etc.More...
#include <localpointer.h>

Public Member Functions | |
| LocalPointerBase (T *p=nullptr) | |
| Constructor takes ownership.More... | |
| ~LocalPointerBase () | |
| Destructor deletes the object it owns.More... | |
| UBool | isNull () const |
| nullptr check.More... | |
| UBool | isValid () const |
| nullptr check.More... | |
| bool | operator== (const T *other) const |
| Comparison with a simple pointer, so that existing code with ==nullptr need not be changed.More... | |
| bool | operator!= (const T *other) const |
| Comparison with a simple pointer, so that existing code with !=nullptr need not be changed.More... | |
| T * | getAlias () const |
| Access without ownership change.More... | |
| T & | operator* () const |
| Access without ownership change.More... | |
| T * | operator-> () const |
| Access without ownership change.More... | |
| T * | orphan () |
| Gives up ownership; the internal pointer becomes nullptr.More... | |
| void | adoptInstead (T *p) |
| Deletes the object it owns, and adopts (takes ownership of) the one passed in.More... | |
Static Public Member Functions | |
| static void * | operator new (size_t)=delete |
| static void * | operator new[] (size_t)=delete |
| static void * | operator new (size_t, void *)=delete |
Protected Attributes | |
| T * | ptr |
| Actual pointer.More... | |
"Smart pointer" base class; do not use directly: useLocalPointer etc.
Base class for smart pointer classes that do not throw exceptions.
Do not use this base class directly, since it does not delete its pointer. A subclass must implement methods that delete the pointer: Destructor andadoptInstead().
There is no operator T *() provided because the programmer must decide whether to usegetAlias() (without transfer of ownership) ororphan() (with transfer of ownership and NULLing of the pointer).
Definition at line68 of filelocalpointer.h.
| inlineexplicit |
Constructor takes ownership.
| p | simple pointer to an object that is adopted |
Definition at line80 of filelocalpointer.h.
| inline |
Destructor deletes the object it owns.
Subclass must override: Base class does nothing.
Definition at line86 of filelocalpointer.h.
| inline |
Deletes the object it owns, and adopts (takes ownership of) the one passed in.
Subclass must override: Base class does not delete the object.
| p | simple pointer to an object that is adopted |
Definition at line151 of filelocalpointer.h.
| inline |
Access without ownership change.
Definition at line120 of filelocalpointer.h.
| inline |
nullptr check.
Definition at line92 of filelocalpointer.h.
Referenced byicu::Locale::getKeywords(), andicu::Locale::getUnicodeKeywords().
| inline |
| inline |
Comparison with a simple pointer, so that existing code with !=nullptr need not be changed.
| other | simple pointer for comparison |
Definition at line114 of filelocalpointer.h.
| inline |
Access without ownership change.
Definition at line126 of filelocalpointer.h.
| inline |
Access without ownership change.
Definition at line132 of filelocalpointer.h.
| inline |
Comparison with a simple pointer, so that existing code with ==nullptr need not be changed.
| other | simple pointer for comparison |
Definition at line106 of filelocalpointer.h.
| inline |
Gives up ownership; the internal pointer becomes nullptr.
Definition at line139 of filelocalpointer.h.
| protected |
Actual pointer.
Definition at line160 of filelocalpointer.h.
Referenced byicu::LocalArray< T >::LocalArray(),icu::LocalPointer< T >::LocalPointer(),icu::LocalArray< T >::operator=(),icu::LocalPointer< T >::operator=(),icu::LocalArray< T >::swap(), andicu::LocalPointer< T >::swap().