1010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// found in the LICENSE file. 4010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 5010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#ifndef TRACE_COLLECTIONS_H_ 6010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#define TRACE_COLLECTIONS_H_ 7010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 8010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#include "heap/stubs.h" 9010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace blink { 11010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 12010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)class HeapObject : public GarbageCollected<HeapObject> { 13010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)public: 14010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) void trace(Visitor*); 15010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)private: 16010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapVector<Member<HeapObject> > m_heapVector; 17010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) Vector<Member<HeapObject>, 0, HeapAllocator> m_wtfVector; 18010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 19010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapDeque<Member<HeapObject> > m_heapDeque; 20010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) Deque<Member<HeapObject>, 0, HeapAllocator> m_wtfDeque; 21010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 22010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapHashSet<Member<HeapObject> > m_heapSet; 23010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HashSet<Member<HeapObject>, void, HeapAllocator> m_wtfSet; 24010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 25010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapListHashSet<Member<HeapObject> > m_heapListSet; 26010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) ListHashSet<Member<HeapObject>, void, HeapAllocator> m_wtfListSet; 27010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 28010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapLinkedHashSet<Member<HeapObject> > m_heapLinkedSet; 29010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) LinkedHashSet<Member<HeapObject>, void, HeapAllocator> m_wtfLinkedSet; 30010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 31010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapHashCountedSet<Member<HeapObject> > m_heapCountedSet; 32010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HashCountedSet<Member<HeapObject>, void, HeapAllocator> m_wtfCountedSet; 33010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 34010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapHashMap<int, Member<HeapObject> > m_heapMapKey; 35010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HeapHashMap<Member<HeapObject>, int > m_heapMapVal; 36010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HashMap<int, Member<HeapObject>, void, void, void, HeapAllocator> 37010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) m_wtfMapKey; 38010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) HashMap<Member<HeapObject>, int, void, void, void, HeapAllocator> 39010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) m_wtfMapVal; 40010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)}; 41010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 42010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)} 43010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) 44010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)#endif 45