Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(22)

Side by Side Diff: tools/clang/blink_gc_plugin/Edge.cpp

Issue 192933002: Check that classes with non-trivial destructors have finalization support. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: comments Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/clang/blink_gc_plugin/Edge.h ('k') | tools/clang/blink_gc_plugin/RecordInfo.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "Config.h" 5 #include "Config.h"
6 #include "Edge.h" 6 #include "Edge.h"
7 #include "RecordInfo.h" 7 #include "RecordInfo.h"
8 8
9 TracingStatus Value::NeedsTracing(NeedsTracingOption option) { 9 TracingStatus Value::NeedsTracing(NeedsTracingOption option) {
10 return value_->NeedsTracing(option); 10 return value_->NeedsTracing(option);
11 } 11 }
12 12
13 bool Value::NeedsFinalization() { return value_->NeedsFinalization(); }
14 bool Collection::NeedsFinalization() { return info_->NeedsFinalization(); }
15
13 void RecursiveEdgeVisitor::AtValue(Value*) {} 16 void RecursiveEdgeVisitor::AtValue(Value*) {}
14 void RecursiveEdgeVisitor::AtRawPtr(RawPtr*) {} 17 void RecursiveEdgeVisitor::AtRawPtr(RawPtr*) {}
15 void RecursiveEdgeVisitor::AtRefPtr(RefPtr*) {} 18 void RecursiveEdgeVisitor::AtRefPtr(RefPtr*) {}
16 void RecursiveEdgeVisitor::AtOwnPtr(OwnPtr*) {} 19 void RecursiveEdgeVisitor::AtOwnPtr(OwnPtr*) {}
17 void RecursiveEdgeVisitor::AtMember(Member*) {} 20 void RecursiveEdgeVisitor::AtMember(Member*) {}
18 void RecursiveEdgeVisitor::AtWeakMember(WeakMember*) {} 21 void RecursiveEdgeVisitor::AtWeakMember(WeakMember*) {}
19 void RecursiveEdgeVisitor::AtPersistent(Persistent*) {} 22 void RecursiveEdgeVisitor::AtPersistent(Persistent*) {}
20 void RecursiveEdgeVisitor::AtCollection(Collection*) {} 23 void RecursiveEdgeVisitor::AtCollection(Collection*) {}
21 24
22 void RecursiveEdgeVisitor::VisitValue(Value* e) { 25 void RecursiveEdgeVisitor::VisitValue(Value* e) {
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 e->ptr()->Accept(this); 66 e->ptr()->Accept(this);
64 Leave(); 67 Leave();
65 } 68 }
66 69
67 void RecursiveEdgeVisitor::VisitCollection(Collection* e) { 70 void RecursiveEdgeVisitor::VisitCollection(Collection* e) {
68 AtCollection(e); 71 AtCollection(e);
69 Enter(e); 72 Enter(e);
70 e->AcceptMembers(this); 73 e->AcceptMembers(this);
71 Leave(); 74 Leave();
72 } 75 }
OLDNEW
« no previous file with comments | « tools/clang/blink_gc_plugin/Edge.h ('k') | tools/clang/blink_gc_plugin/RecordInfo.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698