SheafSystem
0.0.0.0
|
Reference-counted pointer to object of type T. T must be an implementation of concept class rc_any. More...
#include <rc_ptr.h>
Public Member Functions | |
rc_ptr (T *xtarget=0) | |
Creates a handle for xtarget. More... | |
rc_ptr (const rc_ptr &xother) | |
Copy constructor. More... | |
~rc_ptr () | |
Destructor. More... | |
bool | operator! () const |
Comparison of _target to null; enables if(!rc_ptr) syntax. More... | |
template<typename U > | |
bool | operator== (const rc_ptr< U > &xother) const |
Equality comparison; enables comparison to rc_ptrs of other types. More... | |
template<typename U > | |
bool | operator!= (const rc_ptr< U > &xother) const |
Not-equality comparison; enables comparison to rc_ptrs of other types. More... | |
rc_ptr & | operator= (const rc_ptr &xother) |
Assignment from rc_ptr. More... | |
rc_ptr & | operator= (T *xtarget) |
Assignment from T*. More... | |
T * | operator-> () const |
A pointer to the target. More... | |
T & | operator* () const |
A reference to the target. More... | |
Friends | |
bool | operator== (const rc_ptr &lhs, const T *rhs) |
True if and only if the target of lhs is rhs. More... | |
bool | operator== (const T *lhs, const rc_ptr &rhs) |
True if and only if lhs is the target of rhs. More... | |
bool | operator!= (const rc_ptr &lhs, const T *rhs) |
True if and only if the target of lhs is not rhs. More... | |
bool | operator!= (const T *lhs, const rc_ptr &rhs) |
True if and only if lhs is not the target of rhs. More... | |
template<typename U > | |
bool | operator== (const rc_ptr &lhs, const U *rhs) |
True if and only if the target of lhs is rhs. More... | |
template<typename U > | |
bool | operator== (const U *lhs, const rc_ptr &rhs) |
True if and only if lhs is the target of rhs. More... | |
template<typename U > | |
bool | operator!= (const rc_ptr &lhs, const U *rhs) |
True if and only if the target of lhs is not rhs. More... | |
template<typename U > | |
bool | operator!= (const U *lhs, const rc_ptr &rhs) |
True if and only if lhs is not the target of rhs. More... | |
bool | same_target (const rc_ptr< T > &xp1, const rc_ptr< T > &xp2) |
True if xp1 and xp2 point to the same target. More... | |
size_type | target_ref_ct (const rc_ptr< T > &xp) |
The reference count of the target of xp. More... | |
Reference-counted pointer to object of type T. T must be an implementation of concept class rc_any.
Definition at line 47 of file factory_2.h.
sheaf::rc_ptr< T >::rc_ptr | ( | T * | xtarget = 0 | ) |
Creates a handle for xtarget.
Definition at line 40 of file rc_ptr.impl.h.
sheaf::rc_ptr< T >::rc_ptr | ( | const rc_ptr< T > & | xother | ) |
Copy constructor.
Definition at line 67 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::~rc_ptr().
sheaf::rc_ptr< T >::~rc_ptr | ( | ) |
Destructor.
Definition at line 91 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator!().
Referenced by sheaf::rc_ptr< T >::rc_ptr().
bool sheaf::rc_ptr< T >::operator! | ( | ) | const |
Comparison of _target to null; enables if(!rc_ptr) syntax.
Definition at line 101 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator==.
Referenced by sheaf::rc_ptr< T >::~rc_ptr().
bool sheaf::rc_ptr< T >::operator!= | ( | const rc_ptr< U > & | xother | ) | const |
Not-equality comparison; enables comparison to rc_ptrs of other types.
Definition at line 119 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator=().
T & sheaf::rc_ptr< T >::operator* | ( | ) | const |
A reference to the target.
Definition at line 237 of file rc_ptr.impl.h.
Referenced by sheaf::rc_ptr< T >::operator->().
T * sheaf::rc_ptr< T >::operator-> | ( | ) | const |
A pointer to the target.
Definition at line 225 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator*().
Referenced by sheaf::rc_ptr< T >::operator=().
rc_ptr< T > & sheaf::rc_ptr< T >::operator= | ( | const rc_ptr< T > & | xother | ) |
Assignment from rc_ptr.
Definition at line 127 of file rc_ptr.impl.h.
Referenced by sheaf::rc_ptr< T >::operator!=().
rc_ptr< T > & sheaf::rc_ptr< T >::operator= | ( | T * | xtarget | ) |
Assignment from T*.
Definition at line 175 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator->().
bool sheaf::rc_ptr< T >::operator== | ( | const rc_ptr< U > & | xother | ) | const |
Equality comparison; enables comparison to rc_ptrs of other types.
Definition at line 110 of file rc_ptr.impl.h.
References sheaf::rc_ptr< T >::operator!=.
True if and only if the target of lhs is not rhs.
Definition at line 65 of file rc_ptr.h.
Referenced by sheaf::rc_ptr< T >::operator==().
|
friend |
True if and only if the target of lhs is rhs.
Definition at line 49 of file rc_ptr.h.
Referenced by sheaf::rc_ptr< T >::operator!().
|
friend |
|
friend |
|
friend |