10#include <sigc++/reference_wrapper.h>
12#include <cwidget/generic/util/eassert.h>
31 ref_ptr(
const ref_ptr &other)
39 ref_ptr(
const ref_ptr<S> &other)
57 ref_ptr &operator=(
const ref_ptr &other)
70 const sigc::reference_wrapper<T> weak_ref()
const
74 return sigc::ref(*ref);
82 ref_ptr<T> &operator=(
const ref_ptr<S> &other)
98 bool operator==(
const ref_ptr<S> &other)
const
104 bool operator!=(
const ref_ptr<S> &other)
const
110 bool operator<(
const ref_ptr<S> &other)
const
116 bool operator>(
const ref_ptr<S> &other)
const
122 bool operator<=(
const ref_ptr<S> &other)
const
128 bool operator>=(
const ref_ptr<S> &other)
const
135 ref_ptr<S> dyn_downcast()
const
137 return ref_ptr<S>(
dynamic_cast<S*
>(ref));
150 T *operator->()
const