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.
7 #include "RecordInfo.h"
9 TracingStatus
Value::NeedsTracing(NeedsTracingOption option
) {
10 return value_
->NeedsTracing(option
);
13 bool Value::NeedsFinalization() { return value_
->NeedsFinalization(); }
14 bool Collection::NeedsFinalization() { return info_
->NeedsFinalization(); }
16 void RecursiveEdgeVisitor::AtValue(Value
*) {}
17 void RecursiveEdgeVisitor::AtRawPtr(RawPtr
*) {}
18 void RecursiveEdgeVisitor::AtRefPtr(RefPtr
*) {}
19 void RecursiveEdgeVisitor::AtOwnPtr(OwnPtr
*) {}
20 void RecursiveEdgeVisitor::AtMember(Member
*) {}
21 void RecursiveEdgeVisitor::AtWeakMember(WeakMember
*) {}
22 void RecursiveEdgeVisitor::AtPersistent(Persistent
*) {}
23 void RecursiveEdgeVisitor::AtCollection(Collection
*) {}
25 void RecursiveEdgeVisitor::VisitValue(Value
* e
) {
29 void RecursiveEdgeVisitor::VisitRawPtr(RawPtr
* e
) {
32 e
->ptr()->Accept(this);
36 void RecursiveEdgeVisitor::VisitRefPtr(RefPtr
* e
) {
39 e
->ptr()->Accept(this);
42 void RecursiveEdgeVisitor::VisitOwnPtr(OwnPtr
* e
) {
45 e
->ptr()->Accept(this);
49 void RecursiveEdgeVisitor::VisitMember(Member
* e
) {
52 e
->ptr()->Accept(this);
56 void RecursiveEdgeVisitor::VisitWeakMember(WeakMember
* e
) {
59 e
->ptr()->Accept(this);
63 void RecursiveEdgeVisitor::VisitPersistent(Persistent
* e
) {
66 e
->ptr()->Accept(this);
70 void RecursiveEdgeVisitor::VisitCollection(Collection
* e
) {
73 e
->AcceptMembers(this);