OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 WTF_Allocator_h | 5 #ifndef WTF_Allocator_h |
6 #define WTF_Allocator_h | 6 #define WTF_Allocator_h |
7 | 7 |
8 #include "wtf/Assertions.h" | 8 #include "wtf/Assertions.h" |
9 #include "wtf/StdLibExtras.h" | 9 #include "wtf/NotNull.h" |
| 10 #include "wtf/TypeTraits.h" |
10 #include "wtf/allocator/Partitions.h" | 11 #include "wtf/allocator/Partitions.h" |
11 | 12 |
12 namespace WTF { | 13 namespace WTF { |
13 | 14 |
14 // Classes that contain references to garbage-collected objects but aren't | 15 // Classes that contain references to garbage-collected objects but aren't |
15 // themselves garbaged allocated, have some extra macros available which | 16 // themselves garbaged allocated, have some extra macros available which |
16 // allows their use to be restricted to cases where the garbage collector | 17 // allows their use to be restricted to cases where the garbage collector |
17 // is able to discover their references. These macros will be useful for | 18 // is able to discover their references. These macros will be useful for |
18 // non-garbage-collected objects to avoid unintended allocations. | 19 // non-garbage-collected objects to avoid unintended allocations. |
19 // | 20 // |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
140 // Furthermore, the |WITH_TYPE_NAME| variant does not work if |type| is a | 141 // Furthermore, the |WITH_TYPE_NAME| variant does not work if |type| is a |
141 // template argument; |USING_FAST_MALLOC| does. | 142 // template argument; |USING_FAST_MALLOC| does. |
142 #define USING_FAST_MALLOC(type) \ | 143 #define USING_FAST_MALLOC(type) \ |
143 USING_FAST_MALLOC_INTERNAL(type, WTF_HEAP_PROFILER_TYPE_NAME(type)) | 144 USING_FAST_MALLOC_INTERNAL(type, WTF_HEAP_PROFILER_TYPE_NAME(type)) |
144 #define USING_FAST_MALLOC_WITH_TYPE_NAME(type) \ | 145 #define USING_FAST_MALLOC_WITH_TYPE_NAME(type) \ |
145 USING_FAST_MALLOC_INTERNAL(type, #type) | 146 USING_FAST_MALLOC_INTERNAL(type, #type) |
146 | 147 |
147 } // namespace WTF | 148 } // namespace WTF |
148 | 149 |
149 #endif /* WTF_Allocator_h */ | 150 #endif /* WTF_Allocator_h */ |
OLD | NEW |