35 #ifndef QORE_REFERENCE_HOLDER_H_ 36 #define QORE_REFERENCE_HOLDER_H_ 50 template<
typename T =
class AbstractQoreNode>
55 DLLLOCAL
void*
operator new(size_t);
83 DLLLOCAL
void operator=(T *nv) {
97 DLLLOCAL
operator bool()
const {
return p != 0; }
121 DLLLOCAL
void*
operator new(size_t);
130 DLLLOCAL T* operator->() {
return p; }
131 DLLLOCAL T* operator*() {
return p; }
132 DLLLOCAL
const T* operator->()
const {
return p; }
133 DLLLOCAL
const T* operator*()
const {
return p; }
134 DLLLOCAL
void operator=(T *nv) {
139 DLLLOCAL T *release() {
144 DLLLOCAL
operator bool()
const {
return p != 0; }
DLLLOCAL T ** getPtrPtr()
returns a pointer to the pointer being managed
Definition: ReferenceHolder.h:100
DLLLOCAL T * release()
releases the pointer to the caller
Definition: ReferenceHolder.h:90
DLLLOCAL T * operator*()
returns the pointer being managed
Definition: ReferenceHolder.h:74
DLLLOCAL ~ReferenceHolder()
calls deref(ExceptionSink *) on the pointer being managed if not 0
Definition: ReferenceHolder.h:68
DLLLOCAL T *& getRef()
returns a reference to the ptr being managed
Definition: ReferenceHolder.h:103
container for holding Qore-language exception information and also for registering a "thread_exit" ca...
Definition: ExceptionSink.h:47
manages a reference count of a pointer to a class that takes a simple "deref()" call with no argument...
Definition: ReferenceHolder.h:117
DLLLOCAL T * operator->()
returns the pointer being managed
Definition: ReferenceHolder.h:71
a templated class to manage a reference count of an object that can throw a Qore-language exception w...
Definition: ReferenceHolder.h:51