This implements the special NodePointerTo template class, which works just like PointerTo except it manages the objects node_ref_count instead of the normal ref_count. More...
#include "nodePointerTo.h"
Public Types | |
typedef NodePointerToBase< T >::To | To |
![]() | |
typedef T | To |
Public Member Functions | |
NodePointerTo (To *ptr=nullptr) | |
NodePointerTo (const NodePointerTo< T > ©) | |
NodePointerTo (NodePointerTo< T > &&from) noexcept | |
To & | operator * () const |
To * | operator -> () const |
operator T * () const | |
We also have the typecast operator to automatically convert NodePointerTo's to the required kind of actual pointer. More... | |
NodePointerTo< T > & | operator= (NodePointerTo< T > &&from) noexcept |
NodePointerTo< T > & | operator= (To *ptr) |
NodePointerTo< T > & | operator= (const NodePointerTo< T > ©) |
To * | p () const |
Returns an ordinary pointer instead of a NodePointerTo. More... | |
![]() | |
void | clear () |
A convenient way to set the NodePointerTo object to NULL. More... | |
void | output (std::ostream &out) const |
A handy function to output NodePointerTo's as a hex pointer followed by a reference count. More... | |
![]() | |
size_t | get_hash () const |
constexpr bool | is_null () const |
Returns true if the PointerTo is a NULL pointer, false otherwise. More... | |
bool | operator != (const PointerToVoid &other) const |
bool | operator< (const void *other) const |
bool | operator< (const PointerToVoid &other) const |
bool | operator== (const PointerToVoid &other) const |
void | swap (PointerToVoid &other) noexcept |
Swaps the contents of this PointerTo with the other, without touching the reference counts. More... | |
This implements the special NodePointerTo template class, which works just like PointerTo except it manages the objects node_ref_count instead of the normal ref_count.
Definition at line 26 of file nodePointerTo.h.
|
inline |
We also have the typecast operator to automatically convert NodePointerTo's to the required kind of actual pointer.
This introduces ambiguities which the compiler will resolve one way or the other, but we don't care which way it goes because either will be correct.
Definition at line 91 of file nodePointerTo.I.
|
inline |
Returns an ordinary pointer instead of a NodePointerTo.
Useful to work around compiler problems, particularly for implicit upcasts.
Definition at line 103 of file nodePointerTo.I.