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

Side by Side Diff: tools/clang/rewrite_to_chrome_style/tests/methods-original.cc

Issue 1617253002: rewrite_to_chrome_style: exclude conversion functions from being renamed (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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
« no previous file with comments | « tools/clang/rewrite_to_chrome_style/tests/methods-expected.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 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 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 namespace blink { 5 namespace blink {
6 6
7 class Task { 7 class Task {
8 public: 8 public:
9 // Already style-compliant methods shouldn't change. 9 // Already style-compliant methods shouldn't change.
10 void OutputDebugString() {} 10 void OutputDebugString() {}
11 11
12 // Tests that the declarations for methods are updated. 12 // Tests that the declarations for methods are updated.
13 void doTheWork(); 13 void doTheWork();
14 virtual void reallyDoTheWork() = 0; 14 virtual void reallyDoTheWork() = 0;
15 15
16 // Note: this is purposely copyable and assignable, to make sure the Clang 16 // Note: this is purposely copyable and assignable, to make sure the Clang
17 // tool doesn't try to emit replacements for things that aren't explicitly 17 // tool doesn't try to emit replacements for things that aren't explicitly
18 // written. 18 // written.
19 // TODO(dcheng): Add an explicit test for something like operator+. 19
20 // Overloaded operators should not be rewritten.
21 Task& operator++() {
22 return *this;
23 }
24
25 // Conversion functions should not be rewritten.
26 explicit operator int() const {
27 return 42;
28 }
20 }; 29 };
21 30
22 // Test that the actual method definition is also updated. 31 // Test that the actual method definition is also updated.
23 void Task::doTheWork() { 32 void Task::doTheWork() {
24 reallyDoTheWork(); 33 reallyDoTheWork();
25 } 34 }
26 35
27 } // namespace blink 36 } // namespace blink
28 37
29 namespace Moo { 38 namespace Moo {
(...skipping 12 matching lines...) Expand all
42 51
43 // Finally, test that method pointers are also updated. 52 // Finally, test that method pointers are also updated.
44 void F() { 53 void F() {
45 void (blink::Task::*p1)() = &blink::Task::doTheWork; 54 void (blink::Task::*p1)() = &blink::Task::doTheWork;
46 void (blink::Task::*p2)() = &BovineTask::doTheWork; 55 void (blink::Task::*p2)() = &BovineTask::doTheWork;
47 void (blink::Task::*p3)() = &blink::Task::reallyDoTheWork; 56 void (blink::Task::*p3)() = &blink::Task::reallyDoTheWork;
48 void (BovineTask::*p4)() = &BovineTask::reallyDoTheWork; 57 void (BovineTask::*p4)() = &BovineTask::reallyDoTheWork;
49 } 58 }
50 59
51 } // namespace Moo 60 } // namespace Moo
OLDNEW
« no previous file with comments | « tools/clang/rewrite_to_chrome_style/tests/methods-expected.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698