class_does_not_require_finalization.h revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
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 CLASS_DOES_NOT_REQUIRE_FINALIZATION_BASE_H_ 6#define CLASS_DOES_NOT_REQUIRE_FINALIZATION_BASE_H_ 7 8#include "heap/stubs.h" 9 10namespace blink { 11 12class DoesNeedFinalizer : public GarbageCollectedFinalized<DoesNeedFinalizer> { 13public: 14 ~DoesNeedFinalizer() { ; } 15 void trace(Visitor*); 16}; 17 18class DoesNotNeedFinalizer 19 : public GarbageCollectedFinalized<DoesNotNeedFinalizer> { 20public: 21 void trace(Visitor*); 22}; 23 24class DoesNotNeedFinalizer2 25 : public GarbageCollectedFinalized<DoesNotNeedFinalizer2> { 26public: 27 ~DoesNotNeedFinalizer2(); 28 void trace(Visitor*); 29}; 30 31class HasEmptyDtor { 32public: 33 virtual ~HasEmptyDtor() { } 34}; 35 36class DoesNotNeedFinalizer3 37 : public GarbageCollectedFinalized<DoesNotNeedFinalizer3>, 38 public HasEmptyDtor { 39public: 40 void trace(Visitor*); 41}; 42 43} 44 45#endif 46