OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CLASS_MULTIPLE_TRACE_BASES_H_ | 5 #ifndef CLASS_MULTIPLE_TRACE_BASES_H_ |
6 #define CLASS_MULTIPLE_TRACE_BASES_H_ | 6 #define CLASS_MULTIPLE_TRACE_BASES_H_ |
7 | 7 |
8 #include "heap/stubs.h" | 8 #include "heap/stubs.h" |
9 | 9 |
10 namespace blink { | 10 namespace blink { |
11 | 11 |
12 class Base : public GarbageCollected<Base> { | 12 class Base : public GarbageCollected<Base> { |
13 public: | 13 public: |
14 virtual void trace(Visitor*); | 14 virtual void Trace(Visitor*); |
15 }; | 15 }; |
16 | 16 |
17 class Mixin1 : public GarbageCollectedMixin { | 17 class Mixin1 : public GarbageCollectedMixin { |
18 public: | 18 public: |
19 void trace(Visitor*); | 19 void Trace(Visitor*); |
20 }; | 20 }; |
21 | 21 |
22 class Mixin2 : public GarbageCollectedMixin { | 22 class Mixin2 : public GarbageCollectedMixin { |
23 public: | 23 public: |
24 void trace(Visitor*); | 24 void Trace(Visitor*); |
25 }; | 25 }; |
26 | 26 |
27 class Derived1 : public Base, public Mixin1 { | 27 class Derived1 : public Base, public Mixin1 { |
28 USING_GARBAGE_COLLECTED_MIXIN(Derived1); | 28 USING_GARBAGE_COLLECTED_MIXIN(Derived1); |
29 // Requires trace method. | 29 // Requires Trace method. |
30 }; | 30 }; |
31 | 31 |
32 class Derived2 : public Base, public Mixin1, public Mixin2 { | 32 class Derived2 : public Base, public Mixin1, public Mixin2 { |
33 USING_GARBAGE_COLLECTED_MIXIN(Derived2); | 33 USING_GARBAGE_COLLECTED_MIXIN(Derived2); |
34 void trace(Visitor*) override; | 34 void Trace(Visitor*) override; |
35 }; | 35 }; |
36 | 36 |
37 } | 37 } |
38 | 38 |
39 #endif | 39 #endif |
OLD | NEW |