| Index: Source/platform/heap/Handle.h
|
| diff --git a/Source/platform/heap/Handle.h b/Source/platform/heap/Handle.h
|
| index af8842df8dea803143c2fb9add4ffb90ee8e6dcd..305378a15e7c965a18d7499dcc465397cf4b6704 100644
|
| --- a/Source/platform/heap/Handle.h
|
| +++ b/Source/platform/heap/Handle.h
|
| @@ -961,6 +961,78 @@ template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { retu
|
|
|
| #endif // ENABLE(OILPAN)
|
|
|
| +template<typename T>
|
| +class TraceEagerlyTrait<Member<T>> {
|
| +public:
|
| + static const bool value = TraceEagerlyTrait<T>::value;
|
| +};
|
| +
|
| +template<typename T>
|
| +class TraceEagerlyTrait<WeakMember<T>> {
|
| +public:
|
| + static const bool value = TraceEagerlyTrait<T>::value;
|
| +};
|
| +
|
| +template<typename T>
|
| +class TraceEagerlyTrait<Persistent<T>> {
|
| +public:
|
| + static const bool value = TraceEagerlyTrait<T>::value;
|
| +};
|
| +
|
| +template<typename T>
|
| +class TraceEagerlyTrait<CrossThreadPersistent<T>> {
|
| +public:
|
| + static const bool value = TraceEagerlyTrait<T>::value;
|
| +};
|
| +
|
| +template<typename T, typename U, typename V, typename W, typename X>
|
| +class TraceEagerlyTrait<HeapHashMap<T, U, V, W, X> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T) || IS_EAGERLY_TRACED_HEAP_COLLECTION(U);
|
| +};
|
| +
|
| +template<typename T, typename U, typename V>
|
| +class TraceEagerlyTrait<HeapHashSet<T, U, V> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, typename U, typename V>
|
| +class TraceEagerlyTrait<HeapLinkedHashSet<T, U, V> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, size_t inlineCapacity, typename U>
|
| +class TraceEagerlyTrait<HeapListHashSet<T, inlineCapacity, U> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, size_t inlineCapacity>
|
| +class TraceEagerlyTrait<HeapVector<T, inlineCapacity> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, typename U>
|
| +class TraceEagerlyTrait<HeapVectorBacking<T, U> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, size_t inlineCapacity>
|
| +class TraceEagerlyTrait<HeapDeque<T, inlineCapacity> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| +template<typename T, typename U, typename V>
|
| +class TraceEagerlyTrait<HeapHashCountedSet<T, U, V> > {
|
| +public:
|
| + static const bool value = IS_EAGERLY_TRACED_HEAP_COLLECTION(T);
|
| +};
|
| +
|
| } // namespace blink
|
|
|
| namespace WTF {
|
|
|