// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef FIELDS_REQUIRE_TRACING_H_ #define FIELDS_REQUIRE_TRACING_H_ #include "heap/stubs.h" namespace blink { class HeapObject; class PartObject; class PartBObject { DISALLOW_NEW(); public: void Trace(Visitor*); private: HeapHashSet m_set; HeapVector m_vector; }; class PartObject { DISALLOW_NEW(); public: void Trace(Visitor*); private: Member m_obj1; Member m_obj2; Member m_obj3; HeapVector m_parts; }; class HeapObject : public GarbageCollected { public: void Trace(Visitor*); private: PartObject m_part; Member m_obj; }; } #endif