Lines Matching defs:wp

209 class wp
214 inline wp() : m_ptr(0) { }
216 wp(T* other);
217 wp(const wp<T>& other);
218 wp(const sp<T>& other);
219 template<typename U> wp(U* other);
220 template<typename U> wp(const sp<U>& other);
221 template<typename U> wp(const wp<U>& other);
223 ~wp();
227 wp& operator = (T* other);
228 wp& operator = (const wp<T>& other);
229 wp& operator = (const sp<T>& other);
231 template<typename U> wp& operator = (U* other);
232 template<typename U> wp& operator = (const wp<U>& other);
233 template<typename U> wp& operator = (const sp<U>& other);
260 inline bool operator == (const wp<T>& o) const {
264 inline bool operator == (const wp<U>& o) const {
268 inline bool operator > (const wp<T>& o) const {
272 inline bool operator > (const wp<U>& o) const {
276 inline bool operator < (const wp<T>& o) const {
280 inline bool operator < (const wp<U>& o) const {
283 inline bool operator != (const wp<T>& o) const { return m_refs != o.m_refs; }
284 template<typename U> inline bool operator != (const wp<U>& o) const { return !operator == (o); }
285 inline bool operator <= (const wp<T>& o) const { return !operator > (o); }
286 template<typename U> inline bool operator <= (const wp<U>& o) const { return !operator > (o); }
287 inline bool operator >= (const wp<T>& o) const { return !operator < (o); }
288 template<typename U> inline bool operator >= (const wp<U>& o) const { return !operator < (o); }
292 template<typename Y> friend class wp;
299 TextOutput& operator<<(TextOutput& to, const wp<T>& val);
307 wp<T>::wp(T* other)
314 wp<T>::wp(const wp<T>& other)
321 wp<T>::wp(const sp<T>& other)
330 wp<T>::wp(U* other)
337 wp<T>::wp(const wp<U>& other)
347 wp<T>::wp(const sp<U>& other)
356 wp<T>::~wp()
362 wp<T>& wp<T>::operator = (T* other)
373 wp<T>& wp<T>::operator = (const wp<T>& other)
385 wp<T>& wp<T>::operator = (const sp<T>& other)
397 wp<T>& wp<T>::operator = (U* other)
408 wp<T>& wp<T>::operator = (const wp<U>& other)
420 wp<T>& wp<T>::operator = (const sp<U>& other)
432 void wp<T>::set_object_and_refs(T* other, weakref_type* refs)
441 sp<T> wp<T>::promote() const
451 void wp<T>::clear()
460 inline TextOutput& operator<<(TextOutput& to, const wp<T>& val)
472 // for sp<TYPE> or wp<TYPE> when TYPE is a descendant of RefBase:
496 void move_references(wp<TYPE>* d, wp<TYPE> const* s, size_t n) {
499 wp<TYPE>* d;
500 wp<TYPE> const* s;
502 // The id are known to be the wp<>'s this pointer
506 Renamer(wp<TYPE>* d, wp<TYPE> const* s) : s(s), d(d) { }
509 memmove(d, s, n*sizeof(wp<TYPE>));
514 // specialization for moving sp<> and wp<> types.
516 // sp<> and wp<> need to be handled specially, because they do not
532 void move_forward_type(wp<TYPE>* d, wp<TYPE> const* s, size_t n) {
537 void move_backward_type(wp<TYPE>* d, wp<TYPE> const* s, size_t n) {