Index: third_party/WebKit/Source/platform/heap/HeapAllocator.h |
diff --git a/third_party/WebKit/Source/platform/heap/HeapAllocator.h b/third_party/WebKit/Source/platform/heap/HeapAllocator.h |
index c8041da15c6b241ed8fe64ff4c32b4199cd716ae..8d9527a7020fbeeff42ff1cab2ef9cddc64d5b78 100644 |
--- a/third_party/WebKit/Source/platform/heap/HeapAllocator.h |
+++ b/third_party/WebKit/Source/platform/heap/HeapAllocator.h |
@@ -149,7 +149,7 @@ public: |
template<typename VisitorDispatcher, typename T, typename Traits> |
static void trace(VisitorDispatcher visitor, T& t) |
{ |
- TraceCollectionIfEnabled<WTF::NeedsTracingTrait<Traits>::value, Traits::weakHandlingFlag, WTF::WeakPointersActWeak, T, Traits>::trace(visitor, t); |
+ TraceCollectionIfEnabled<WTF::IsTraceableInCollectionTrait<Traits>::value, Traits::weakHandlingFlag, WTF::WeakPointersActWeak, T, Traits>::trace(visitor, t); |
} |
template<typename VisitorDispatcher> |
@@ -207,7 +207,7 @@ static void traceListHashSetValue(VisitorDispatcher visitor, Value& value) |
// (there's an assert elsewhere), but we have to specify some value for the |
// strongify template argument, so we specify WTF::WeakPointersActWeak, |
// arbitrarily. |
- TraceCollectionIfEnabled<WTF::NeedsTracingTrait<WTF::HashTraits<Value>>::value, WTF::NoWeakHandlingInCollections, WTF::WeakPointersActWeak, Value, WTF::HashTraits<Value>>::trace(visitor, value); |
+ TraceCollectionIfEnabled<WTF::IsTraceableInCollectionTrait<WTF::HashTraits<Value>>::value, WTF::NoWeakHandlingInCollections, WTF::WeakPointersActWeak, Value, WTF::HashTraits<Value>>::trace(visitor, value); |
} |
// The inline capacity is just a dummy template argument to match the off-heap |
@@ -314,7 +314,7 @@ template< |
typename MappedTraitsArg = HashTraits<MappedArg>> |
class HeapHashMap : public HashMap<KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg, HeapAllocator> { |
IS_GARBAGE_COLLECTED_TYPE(); |
- static_assert(WTF::IsWeak<KeyArg>::value || WTF::IsWeak<MappedArg>::value || WTF::NeedsTracing<KeyArg>::value || WTF::NeedsTracing<MappedArg>::value, "For hash maps without traceable elements, use HashMap<> instead of HeapHashMap<>"); |
+ static_assert(WTF::IsTraceable<KeyArg>::value || WTF::IsTraceable<MappedArg>::value, "For hash maps without traceable elements, use HashMap<> instead of HeapHashMap<>"); |
}; |
template< |
@@ -323,7 +323,7 @@ template< |
typename TraitsArg = HashTraits<ValueArg>> |
class HeapHashSet : public HashSet<ValueArg, HashArg, TraitsArg, HeapAllocator> { |
IS_GARBAGE_COLLECTED_TYPE(); |
- static_assert(WTF::IsWeak<ValueArg>::value || WTF::NeedsTracing<ValueArg>::value, "For hash sets without traceable elements, use HashSet<> instead of HeapHashSet<>"); |
+ static_assert(WTF::IsTraceable<ValueArg>::value, "For hash sets without traceable elements, use HashSet<> instead of HeapHashSet<>"); |
}; |
template< |
@@ -332,7 +332,7 @@ template< |
typename TraitsArg = HashTraits<ValueArg>> |
class HeapLinkedHashSet : public LinkedHashSet<ValueArg, HashArg, TraitsArg, HeapAllocator> { |
IS_GARBAGE_COLLECTED_TYPE(); |
- static_assert(WTF::IsWeak<ValueArg>::value || WTF::NeedsTracing<ValueArg>::value, "For sets without traceable elements, use LinkedHashSet<> instead of HeapLinkedHashSet<>"); |
+ static_assert(WTF::IsTraceable<ValueArg>::value, "For sets without traceable elements, use LinkedHashSet<> instead of HeapLinkedHashSet<>"); |
}; |
template< |
@@ -341,7 +341,7 @@ template< |
typename HashArg = typename DefaultHash<ValueArg>::Hash> |
class HeapListHashSet : public ListHashSet<ValueArg, inlineCapacity, HashArg, HeapListHashSetAllocator<ValueArg, inlineCapacity>> { |
IS_GARBAGE_COLLECTED_TYPE(); |
- static_assert(WTF::IsWeak<ValueArg>::value || WTF::NeedsTracing<ValueArg>::value, "For sets without traceable elements, use ListHashSet<> instead of HeapListHashSet<>"); |
+ static_assert(WTF::IsTraceable<ValueArg>::value, "For sets without traceable elements, use ListHashSet<> instead of HeapListHashSet<>"); |
}; |
template< |
@@ -350,7 +350,7 @@ template< |
typename Traits = HashTraits<Value>> |
class HeapHashCountedSet : public HashCountedSet<Value, HashFunctions, Traits, HeapAllocator> { |
IS_GARBAGE_COLLECTED_TYPE(); |
- static_assert(WTF::IsWeak<Value>::value || WTF::NeedsTracing<Value>::value, "For counted sets without traceable elements, use HashCountedSet<> instead of HeapHashCountedSet<>"); |
+ static_assert(WTF::IsTraceable<Value>::value, "For counted sets without traceable elements, use HashCountedSet<> instead of HeapHashCountedSet<>"); |
}; |
template<typename T, size_t inlineCapacity = 0> |
@@ -359,7 +359,7 @@ class HeapVector : public Vector<T, inlineCapacity, HeapAllocator> { |
public: |
HeapVector() |
{ |
- static_assert(WTF::NeedsTracing<T>::value, "For vectors without traceable elements, use Vector<> instead of HeapVector<>"); |
+ static_assert(WTF::IsTraceable<T>::value, "For vectors without traceable elements, use Vector<> instead of HeapVector<>"); |
} |
explicit HeapVector(size_t size) : Vector<T, inlineCapacity, HeapAllocator>(size) |
@@ -383,7 +383,7 @@ class HeapDeque : public Deque<T, inlineCapacity, HeapAllocator> { |
public: |
HeapDeque() |
{ |
- static_assert(WTF::NeedsTracing<T>::value, "For vectors without traceable elements, use Deque<> instead of HeapDeque<>"); |
+ static_assert(WTF::IsTraceable<T>::value, "For vectors without traceable elements, use Deque<> instead of HeapDeque<>"); |
} |
explicit HeapDeque(size_t size) : Deque<T, inlineCapacity, HeapAllocator>(size) |
@@ -561,8 +561,8 @@ template<typename T> struct HashTraits<blink::UntracedMember<T>> : SimpleClassHa |
}; |
template<typename T, size_t inlineCapacity> |
-struct NeedsTracing<ListHashSetNode<T, blink::HeapListHashSetAllocator<T, inlineCapacity>> *> { |
- STATIC_ONLY(NeedsTracing); |
+struct IsTraceable<ListHashSetNode<T, blink::HeapListHashSetAllocator<T, inlineCapacity>> *> { |
+ STATIC_ONLY(IsTraceable); |
static_assert(sizeof(T), "T must be fully defined"); |
// All heap allocated node pointers need visiting to keep the nodes alive, |
// regardless of whether they contain pointers to other heap allocated |