Lines Matching defs:WeakPtr
27 // static void StartNew(const WeakPtr<Controller>& controller) {
32 // Worker(const WeakPtr<Controller>& controller)
38 // WeakPtr<Controller> controller_;
48 // WARNING: weak pointers are not threadsafe!!! You must only use a WeakPtr
63 // These classes are part of the WeakPtr implementation.
69 // via base::WeakPtr::~WeakPtr().
120 // This class simplifies the implementation of WeakPtr's type conversion
122 // WeakPtr<T> cannot access the private members of WeakPtr<U>, so this
140 // The WeakPtr class holds a weak reference to |T*|.
149 // WeakPtr<Foo> foo;
154 class WeakPtr : public internal::WeakPtrBase {
156 WeakPtr() : ptr_(NULL) {
161 WeakPtr(const WeakPtr<U>& other) : WeakPtrBase(other), ptr_(other.get()) {
185 WeakPtr(const internal::WeakReference& ref, T* ptr)
203 WeakPtr<T> AsWeakPtr() {
204 return WeakPtr<T>(weak_reference_owner_.GetRef(), static_cast<T*>(this));
228 WeakPtr<T> GetWeakPtr() {
229 return WeakPtr<T>(weak_reference_owner_.GetRef(), ptr_);