• Peter Kasting's avatar
    Allow base::DoNothing() to handle any argument list. · 341e1fbe
    Peter Kasting authored
    This changes the form of DoNothing() from a simple no-arg function to a class
    that produces callbacks via templated operator().  This allows callers to
    replace base::Bind(&base::DoNothing) with base::DoNothing() for a small
    boilerplate reduction; more importantly, it allows using DoNothing() to replace
    existing no-op functions/lambdas that took more than zero args, and thus had to
    be manually declared.  This removes dozens of such functions and around 600 LOC
    total.
    
    In a few places, DoNothing() can't be used directly, and this change also adds
    explicit callback-generating Once<>() and Repeatedly<>() members that will
    produce a callback with a specific signature.
    
    BUG=811554
    TEST=none
    
    Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_mojo;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_vr;master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
    Change-Id: I37f87b35c6c079a6a8c03ff18ec3a54e1237f126
    Reviewed-on: https://chromium-review.googlesource.com/903416
    Commit-Queue: Peter Kasting <pkasting@chromium.org>
    Reviewed-by: default avatarJochen Eisinger <jochen@chromium.org>
    Reviewed-by: default avatarGabriel Charette <gab@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#538953}
    341e1fbe
bluetooth_connection.cc 7.23 KB