Lines Matching refs:T
33 template<typename T> class wp;
38 inline bool operator _op_ (const sp<T>& o) const { \
41 inline bool operator _op_ (const T* o) const { \
52 inline bool operator _op_ (const wp<T>& o) const { \
62 template <typename T>
68 sp(T* other);
69 sp(const sp<T>& other);
77 sp& operator = (T* other);
78 sp& operator = (const sp<T>& other);
84 void force_set(T* other);
92 inline T& operator* () const { return *m_ptr; }
93 inline T* operator-> () const { return m_ptr; }
94 inline T* get() const { return m_ptr; } in get()
108 void set_pointer(T* ptr);
109 T* m_ptr;
114 template <typename T>
115 TextOutput& operator<<(TextOutput& to, const sp<T>& val);
120 template<typename T>
121 sp<T>::sp(T* other) in sp()
127 template<typename T>
128 sp<T>::sp(const sp<T>& other) in sp()
134 template<typename T> template<typename U>
135 sp<T>::sp(U* other) : m_ptr(other) in sp()
137 if (other) ((T*)other)->incStrong(this); in sp()
140 template<typename T> template<typename U>
141 sp<T>::sp(const sp<U>& other) in sp()
147 template<typename T>
148 sp<T>::~sp() in ~sp()
153 template<typename T>
154 sp<T>& sp<T>::operator = (const sp<T>& other) {
155 T* otherPtr(other.m_ptr);
162 template<typename T>
163 sp<T>& sp<T>::operator = (T* other)
171 template<typename T> template<typename U>
172 sp<T>& sp<T>::operator = (const sp<U>& other)
174 T* otherPtr(other.m_ptr);
181 template<typename T> template<typename U>
182 sp<T>& sp<T>::operator = (U* other)
184 if (other) ((T*)other)->incStrong(this);
190 template<typename T>
191 void sp<T>::force_set(T* other) in force_set()
197 template<typename T>
198 void sp<T>::clear() in clear()
206 template<typename T>
207 void sp<T>::set_pointer(T* ptr) { in set_pointer()
211 template <typename T>
212 inline TextOutput& operator<<(TextOutput& to, const sp<T>& val)