OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef BASE_MEMORY_REF_COUNTED_H_ | 5 #ifndef BASE_MEMORY_REF_COUNTED_H_ |
6 #define BASE_MEMORY_REF_COUNTED_H_ | 6 #define BASE_MEMORY_REF_COUNTED_H_ |
7 | 7 |
8 #include <cassert> | 8 #include <cassert> |
9 #include <iosfwd> | 9 #include <iosfwd> |
10 | 10 |
11 #include "base/atomic_ref_count.h" | 11 #include "base/atomic_ref_count.h" |
12 #include "base/base_export.h" | 12 #include "base/base_export.h" |
13 #include "base/compiler_specific.h" | 13 #include "base/compiler_specific.h" |
14 #ifndef NDEBUG | 14 #ifndef NDEBUG |
15 #include "base/logging.h" | 15 #include "base/logging.h" |
16 #endif | 16 #endif |
17 #include "base/threading/thread_collision_warner.h" | 17 #include "base/threading/thread_collision_warner.h" |
18 #include "build/build_config.h" | 18 #include "build/build_config.h" |
19 | 19 |
20 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) | 20 #if defined(OS_LINUX) |
21 #define DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR | 21 #define DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR |
22 #endif | 22 #endif |
23 | 23 |
24 namespace base { | 24 namespace base { |
25 | 25 |
26 namespace subtle { | 26 namespace subtle { |
27 | 27 |
28 class BASE_EXPORT RefCountedBase { | 28 class BASE_EXPORT RefCountedBase { |
29 public: | 29 public: |
30 bool HasOneRef() const { return ref_count_ == 1; } | 30 bool HasOneRef() const { return ref_count_ == 1; } |
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
393 return !operator==(lhs, rhs); | 393 return !operator==(lhs, rhs); |
394 } | 394 } |
395 | 395 |
396 template <typename T> | 396 template <typename T> |
397 std::ostream& operator<<(std::ostream& out, const scoped_refptr<T>& p) { | 397 std::ostream& operator<<(std::ostream& out, const scoped_refptr<T>& p) { |
398 return out << p.get(); | 398 return out << p.get(); |
399 } | 399 } |
400 #endif // defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR) | 400 #endif // defined(DISABLE_SCOPED_REFPTR_CONVERSION_OPERATOR) |
401 | 401 |
402 #endif // BASE_MEMORY_REF_COUNTED_H_ | 402 #endif // BASE_MEMORY_REF_COUNTED_H_ |
OLD | NEW |