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