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. 4 5 #ifndef TRACE_IF_NEEDED_H_ 6 #define TRACE_IF_NEEDED_H_ 7 8 #include "heap/stubs.h" 9 10 namespace blink { 11 12 class HeapObject : public GarbageCollected<HeapObject> { }; 13 14 template<typename T> 15 class TemplatedObject : public GarbageCollected<TemplatedObject<T> > { 16 public: 17 virtual void Trace(Visitor*); 18 private: 19 T m_one; 20 T m_two; 21 }; 22 23 class InstantiatedObject : public TemplatedObject<Member<HeapObject> > { }; 24 25 } 26 27 #endif 28