27 #ifndef CPPFREETYPE_REFPTR_H_
28 #define CPPFREETYPE_REFPTR_H_
38 template<
class Traits >
137 operator bool()
const
142 template <
typename T2>
pointer to a reference counted object, auto destruct when reference count is zero ...
ConstCPtr< Traits > operator*() const
Traits::Delegate Delegate
RefPtr< Traits > & operator=(const RefPtr< Traits > &other)
assignment operator, decreases reference count of current object, increases reference count of copied...
const Delegate operator->() const
void reference()
increase reference count by one, see specializations
cobjptr subvert()
return the stored pointer, subverting reference safety, see specializations if Storage is not the sam...
RefPtr(cobjptr ptr=0, bool doRef=false)
create a RefPtr from the specified cobj
LValuePair< RefPtr< Traits >, T2 > operator,(T2 &other)
CPtr< Traits > operator*()
void dereference()
decrease reference count by one, see specializations
allows an error to be returned with a result in a single expression
acts like a c-pointer by overloading the ->() operator, but is not copyable and doesn't allow the unde...
acts like a const c-pointer by overloading the ->() operator, but is not copyable and doesn't allow th...
void unlink()
dereference the stored object and turn this into a null pointer
RefPtr(const RefPtr< Traits > &other)
copy construct a pointer, increasing the reference count
BinaryKey other(const BinaryKey &key)
~RefPtr()
when the RefPtr is destroyed the reference count of the pointed-to object is decreased ...
const cobjptr subvert() const
Delegate operator->()
the member operator, exposes the underlying cobj pointer