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#include "class_requires_finalization_mixin.h" 6 7namespace blink { 8 9void MixinFinalizable::Trace(Visitor* visitor) 10{ 11 visitor->Trace(m_onHeap); 12} 13 14void MixinNotFinalizable::Trace(Visitor* visitor) 15{ 16 visitor->Trace(m_onHeap); 17} 18 19void NeedsFinalizer::Trace(Visitor* visitor) 20{ 21 visitor->Trace(m_obj); 22 MixinFinalizable::Trace(visitor); 23} 24 25void HasFinalizer::Trace(Visitor* visitor) 26{ 27 visitor->Trace(m_obj); 28 MixinFinalizable::Trace(visitor); 29} 30 31void NeedsNoFinalization::Trace(Visitor* visitor) 32{ 33 visitor->Trace(m_obj); 34 MixinNotFinalizable::Trace(visitor); 35} 36 37} 38