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

Side by Side Diff: tools/clang/value_cleanup/ListValueRewriter.cpp

Issue 2476493003: Remove FundamentalValue
Patch Set: Fix Created 4 years, 1 month 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "ListValueRewriter.h" 5 #include "ListValueRewriter.h"
6 6
7 #include <assert.h> 7 #include <assert.h>
8 #include <algorithm> 8 #include <algorithm>
9 9
10 #include "clang/AST/ASTContext.h" 10 #include "clang/AST/ASTContext.h"
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 append_double_callback_(replacements), 344 append_double_callback_(replacements),
345 append_string_callback_(replacements), 345 append_string_callback_(replacements),
346 append_released_unique_ptr_callback_(replacements), 346 append_released_unique_ptr_callback_(replacements),
347 append_raw_ptr_callback_(replacements) {} 347 append_raw_ptr_callback_(replacements) {}
348 348
349 void ListValueRewriter::RegisterMatchers(MatchFinder* match_finder) { 349 void ListValueRewriter::RegisterMatchers(MatchFinder* match_finder) {
350 auto is_list_append = cxxMemberCallExpr( 350 auto is_list_append = cxxMemberCallExpr(
351 callee(cxxMethodDecl(hasName("::base::ListValue::Append"))), 351 callee(cxxMethodDecl(hasName("::base::ListValue::Append"))),
352 argumentCountIs(1)); 352 argumentCountIs(1));
353 353
354 // base::ListValue::Append(new base::FundamentalValue(bool)) 354 // base::ListValue::Append(new base::Value(bool))
355 // => base::ListValue::AppendBoolean() 355 // => base::ListValue::AppendBoolean()
356 match_finder->addMatcher( 356 match_finder->addMatcher(
357 id("callExpr", 357 id("callExpr",
358 cxxMemberCallExpr( 358 cxxMemberCallExpr(
359 is_list_append, 359 is_list_append,
360 hasArgument( 360 hasArgument(
361 0, ignoringParenImpCasts(id( 361 0, ignoringParenImpCasts(id(
362 "newExpr", 362 "newExpr",
363 cxxNewExpr(has(cxxConstructExpr( 363 cxxNewExpr(has(cxxConstructExpr(
364 hasDeclaration(cxxMethodDecl(hasName( 364 hasDeclaration(cxxMethodDecl(hasName(
365 "::base::FundamentalValue::FundamentalValue"))), 365 "::base::Value::Value"))),
366 argumentCountIs(1), 366 argumentCountIs(1),
367 hasArgument( 367 hasArgument(
368 0, id("argExpr", 368 0, id("argExpr",
369 expr(hasType(booleanType())))))))))))), 369 expr(hasType(booleanType())))))))))))),
370 &append_boolean_callback_); 370 &append_boolean_callback_);
371 371
372 // base::ListValue::Append(new base::FundamentalValue(int)) 372 // base::ListValue::Append(new base::Value(int))
373 // => base::ListValue::AppendInteger() 373 // => base::ListValue::AppendInteger()
374 match_finder->addMatcher( 374 match_finder->addMatcher(
375 id("callExpr", 375 id("callExpr",
376 cxxMemberCallExpr( 376 cxxMemberCallExpr(
377 is_list_append, 377 is_list_append,
378 hasArgument( 378 hasArgument(
379 0, 379 0,
380 ignoringParenImpCasts(id( 380 ignoringParenImpCasts(id(
381 "newExpr", 381 "newExpr",
382 cxxNewExpr(has(cxxConstructExpr( 382 cxxNewExpr(has(cxxConstructExpr(
383 hasDeclaration(cxxMethodDecl(hasName( 383 hasDeclaration(cxxMethodDecl(hasName(
384 "::base::FundamentalValue::FundamentalValue"))), 384 "::base::Value::Value"))),
385 argumentCountIs(1), 385 argumentCountIs(1),
386 hasArgument(0, id("argExpr", 386 hasArgument(0, id("argExpr",
387 expr(hasType(isInteger()), 387 expr(hasType(isInteger()),
388 unless(hasType( 388 unless(hasType(
389 booleanType()))))))))))))), 389 booleanType()))))))))))))),
390 &append_integer_callback_); 390 &append_integer_callback_);
391 391
392 // base::ListValue::Append(new base::FundamentalValue(double)) 392 // base::ListValue::Append(new base::Value(double))
393 // => base::ListValue::AppendDouble() 393 // => base::ListValue::AppendDouble()
394 match_finder->addMatcher( 394 match_finder->addMatcher(
395 id("callExpr", 395 id("callExpr",
396 cxxMemberCallExpr( 396 cxxMemberCallExpr(
397 is_list_append, 397 is_list_append,
398 hasArgument( 398 hasArgument(
399 0, ignoringParenImpCasts(id( 399 0, ignoringParenImpCasts(id(
400 "newExpr", 400 "newExpr",
401 cxxNewExpr(has(cxxConstructExpr( 401 cxxNewExpr(has(cxxConstructExpr(
402 hasDeclaration(cxxMethodDecl(hasName( 402 hasDeclaration(cxxMethodDecl(hasName(
403 "::base::FundamentalValue::FundamentalValue"))), 403 "::base::Value::Value"))),
404 argumentCountIs(1), 404 argumentCountIs(1),
405 hasArgument( 405 hasArgument(
406 0, id("argExpr", 406 0, id("argExpr",
407 expr(hasType( 407 expr(hasType(
408 realFloatingPointType())))))))))))), 408 realFloatingPointType())))))))))))),
409 &append_double_callback_); 409 &append_double_callback_);
410 410
411 // base::ListValue::Append(new base::StringValue(...)) 411 // base::ListValue::Append(new base::StringValue(...))
412 // => base::ListValue::AppendString() 412 // => base::ListValue::AppendString()
413 match_finder->addMatcher( 413 match_finder->addMatcher(
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 anyOf(hasInitializer( 473 anyOf(hasInitializer(
474 // Note this won't match C++11 uniform 474 // Note this won't match C++11 uniform
475 // initialization syntax, since the 475 // initialization syntax, since the
476 // CXXNewExpr is wrapped in an 476 // CXXNewExpr is wrapped in an
477 // InitListExpr in that case. 477 // InitListExpr in that case.
478 ignoringParenImpCasts(cxxNewExpr())), 478 ignoringParenImpCasts(cxxNewExpr())),
479 unless(hasInitializer(expr()))), 479 unless(hasInitializer(expr()))),
480 unless(parmVarDecl()))))))))), 480 unless(parmVarDecl()))))))))),
481 &append_raw_ptr_callback_); 481 &append_raw_ptr_callback_);
482 } 482 }
OLDNEW
« no previous file with comments | « skia/ext/benchmarking_canvas.cc ('k') | tools/clang/value_cleanup/tests/list-value-append-original.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698