23 #ifndef SHEAF_DLL_SPEC_H 24 #include "SheafSystem/sheaf_dll_spec.h" 28 #include "SheafSystem/sheaf.h" 51 return lhs._target == rhs;
59 return lhs == rhs._target;
67 return lhs._target != rhs;
75 return lhs != rhs._target;
84 return lhs._target == rhs;
93 return lhs == rhs._target;
102 return lhs._target != rhs;
108 template <
typename U>
111 return lhs != rhs._target;
121 return xp1._target == xp2._target;
129 return xp != 0 ? xp->ref_ct() : 0;
158 template <
typename U>
164 template <
typename U>
203 #endif // ifndef RC_PTR_H friend bool operator!=(const rc_ptr &lhs, const U *rhs)
True if and only if the target of lhs is not rhs.
friend bool same_target(const rc_ptr< T > &xp1, const rc_ptr< T > &xp2)
True if xp1 and xp2 point to the same target.
friend bool operator==(const rc_ptr &lhs, const T *rhs)
True if and only if the target of lhs is rhs.
T & operator*() const
A reference to the target.
friend size_type target_ref_ct(const rc_ptr< T > &xp)
The reference count of the target of xp.
friend bool operator!=(const U *lhs, const rc_ptr &rhs)
True if and only if lhs is not the target of rhs.
friend bool operator!=(const T *lhs, const rc_ptr &rhs)
True if and only if lhs is not the target of rhs.
T * operator->() const
A pointer to the target.
unsigned long size_type
An unsigned integral type used to represent sizes and capacities.
friend bool operator==(const T *lhs, const rc_ptr &rhs)
True if and only if lhs is the target of rhs.
rc_ptr & operator=(const rc_ptr &xother)
Assignment from rc_ptr.
friend bool operator==(const U *lhs, const rc_ptr &rhs)
True if and only if lhs is the target of rhs.
bool operator!() const
Comparison of _target to null; enables if(!rc_ptr) syntax.
friend bool operator!=(const rc_ptr &lhs, const T *rhs)
True if and only if the target of lhs is not rhs.
Namespace for the sheaves component of the sheaf system.
friend bool operator==(const rc_ptr &lhs, const U *rhs)
True if and only if the target of lhs is rhs.
rc_ptr(T *xtarget=0)
Creates a handle for xtarget.
Reference-counted pointer to object of type T. T must be an implementation of concept class rc_any...