Index: webrtc/base/weak_ptr.cc |
diff --git a/webrtc/base/weak_ptr.cc b/webrtc/base/weak_ptr.cc |
deleted file mode 100644 |
index 8a07a87b7d0dcdd72c5c678bcc0c5f6cbd725938..0000000000000000000000000000000000000000 |
--- a/webrtc/base/weak_ptr.cc |
+++ /dev/null |
@@ -1,87 +0,0 @@ |
-/* |
- * Copyright 2016 The WebRTC Project Authors. All rights reserved. |
- * |
- * Use of this source code is governed by a BSD-style license |
- * that can be found in the LICENSE file in the root of the source |
- * tree. An additional intellectual property rights grant can be found |
- * in the file PATENTS. All contributing project authors may |
- * be found in the AUTHORS file in the root of the source tree. |
- */ |
- |
-#include "webrtc/base/weak_ptr.h" |
- |
-// The implementation is borrowed from chromium except that it does not |
-// implement SupportsWeakPtr. |
- |
-namespace rtc { |
-namespace internal { |
- |
-WeakReference::Flag::Flag() : is_valid_(true) { |
- // Flags only become bound when checked for validity, or invalidated, |
- // so that we can check that later validity/invalidation operations on |
- // the same Flag take place on the same sequence. |
- checker_.Detach(); |
-} |
- |
-void WeakReference::Flag::Invalidate() { |
- RTC_DCHECK(checker_.CalledSequentially()) |
- << "WeakPtrs must be invalidated on the same sequence."; |
- is_valid_ = false; |
-} |
- |
-bool WeakReference::Flag::IsValid() const { |
- RTC_DCHECK(checker_.CalledSequentially()) |
- << "WeakPtrs must be checked on the same sequence."; |
- return is_valid_; |
-} |
- |
-WeakReference::Flag::~Flag() {} |
- |
-WeakReference::WeakReference() {} |
- |
-WeakReference::WeakReference(const Flag* flag) : flag_(flag) {} |
- |
-WeakReference::~WeakReference() {} |
- |
-WeakReference::WeakReference(WeakReference&& other) = default; |
- |
-WeakReference::WeakReference(const WeakReference& other) = default; |
- |
-bool WeakReference::is_valid() const { |
- return flag_.get() && flag_->IsValid(); |
-} |
- |
-WeakReferenceOwner::WeakReferenceOwner() { |
- checker_.Detach(); |
-} |
- |
-WeakReferenceOwner::~WeakReferenceOwner() { |
- RTC_DCHECK(checker_.CalledSequentially()); |
- Invalidate(); |
-} |
- |
-WeakReference WeakReferenceOwner::GetRef() const { |
- RTC_DCHECK(checker_.CalledSequentially()); |
- // If we hold the last reference to the Flag then create a new one. |
- if (!HasRefs()) |
- flag_ = new RefCountedObject<WeakReference::Flag>(); |
- |
- return WeakReference(flag_.get()); |
-} |
- |
-void WeakReferenceOwner::Invalidate() { |
- RTC_DCHECK(checker_.CalledSequentially()); |
- if (flag_.get()) { |
- flag_->Invalidate(); |
- flag_ = nullptr; |
- } |
-} |
- |
-WeakPtrBase::WeakPtrBase() {} |
- |
-WeakPtrBase::~WeakPtrBase() {} |
- |
-WeakPtrBase::WeakPtrBase(const WeakReference& ref) : ref_(ref) {} |
- |
-} // namespace internal |
-} // namespace rtc |