Roll src/third_party/WebKit d10c917:a1123a1 (svn 198729:198730)
[chromium-blink-merge.git] / tools / clang / blink_gc_plugin / tests / traceimpl_overloaded.cpp
blob02d485835187d56e27c108228a7f63548dc5d583
1 // Copyright 2015 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.
5 #include "traceimpl_overloaded.h"
7 namespace blink {
9 void ExternBase::trace(Visitor* visitor) {
10 traceImpl(visitor);
13 void ExternBase::trace(InlinedGlobalMarkingVisitor visitor) {
14 traceImpl(visitor);
17 template <typename VisitorDispatcher>
18 inline void ExternBase::traceImpl(VisitorDispatcher visitor) {
19 visitor->trace(x_base_);
22 void ExternDerived::trace(Visitor* visitor) {
23 traceImpl(visitor);
26 void ExternDerived::trace(InlinedGlobalMarkingVisitor visitor) {
27 traceImpl(visitor);
30 template <typename VisitorDispatcher>
31 inline void ExternDerived::traceImpl(VisitorDispatcher visitor) {
32 visitor->trace(x_derived_);
33 ExternBase::trace(visitor);