1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef TRACE_COLLECTIONS_H_
6 #define TRACE_COLLECTIONS_H_
8 #include "heap/stubs.h"
12 class HeapObject
: public GarbageCollected
<HeapObject
> {
16 HeapVector
<Member
<HeapObject
> > m_heapVector
;
17 Vector
<Member
<HeapObject
>, 0, HeapAllocator
> m_wtfVector
;
19 HeapDeque
<Member
<HeapObject
> > m_heapDeque
;
20 Deque
<Member
<HeapObject
>, 0, HeapAllocator
> m_wtfDeque
;
22 HeapHashSet
<Member
<HeapObject
> > m_heapSet
;
23 HashSet
<Member
<HeapObject
>, void, HeapAllocator
> m_wtfSet
;
25 HeapListHashSet
<Member
<HeapObject
> > m_heapListSet
;
26 ListHashSet
<Member
<HeapObject
>, void, HeapAllocator
> m_wtfListSet
;
28 HeapLinkedHashSet
<Member
<HeapObject
> > m_heapLinkedSet
;
29 LinkedHashSet
<Member
<HeapObject
>, void, HeapAllocator
> m_wtfLinkedSet
;
31 HeapHashCountedSet
<Member
<HeapObject
> > m_heapCountedSet
;
32 HashCountedSet
<Member
<HeapObject
>, void, HeapAllocator
> m_wtfCountedSet
;
34 HeapHashMap
<int, Member
<HeapObject
> > m_heapMapKey
;
35 HeapHashMap
<Member
<HeapObject
>, int > m_heapMapVal
;
36 HashMap
<int, Member
<HeapObject
>, void, void, void, HeapAllocator
>
38 HashMap
<Member
<HeapObject
>, int, void, void, void, HeapAllocator
>