#include <baseref.h>
PointerHandler has to be used as template argument for BaseRef to obtain a reference with ordinary C++-pointer-like behavior. This means that no actions are performed when references are set or cleared. The easiest way to make use of PointerHandler is to use the Pointer template which is a BaseRef with PointerHandler argument.
Static Public Member Functions | |
template<typename T > | |
static void | InitialReference (const T *o) |
template<typename T > | |
static void | AddReference (T *o) |
template<typename T > | |
static void | RemoveReference (T *o) |
template<typename R > | |
static ResultRef< typename R::ReferencedType > | MakeWritable (R &ref, Bool resetOnError) |
Static Public Attributes | |
static constexpr VALUEKIND | KIND |
|
static |
Sets the initial reference to a newly allocated object (slightly more efficient than AddReference).
[in] | o | Pointer to the referenced object, must not be nullptr. |
|
static |
Adds a reference to the referenced object.
[in] | o | Pointer to the referenced object, must not be nullptr. |
|
static |
Removes a reference to the referenced object.
[in] | o | Pointer to the referenced object, must not be nullptr. |
|
staticconstexpr |