Use OnceCallback on Mojo interfaces in //components/chrome_cleaner

This CL flips `use_once_calback` flag on the Mojo code generator, and
fixes all compile errors after it. After this CL, Mojo interfaces in
//components/chrome_cleaner starts using base::OnceCallback instead of
base::Callback on its return value handling.

The migration recipe was:
 - Convert pass-by-ref callback objects to pass-by-value.
 - Use std::move() to forward it to other consumer, or to invoke it
   with Callback::Run().
 - Handle wherever copies are required manually.
 - Check if the conversion doesn't change the semantics. As the transfer
   and invocation clobber the callback object, care about use-after-move.
   It's considered safe to consume almost scoped-out callback.

BUG=714018

Review-Url: https://codereview.chromium.org/2867723002
Cr-Original-Commit-Position: refs/heads/master@{#470322}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5fa4456aa172ddb1dd6bb47036786bb94375fd62
1 file changed
tree: ccc9fc1f1e30fe74670f0c5a9d196328a8e3de7e
  1. DEPS
  2. OWNERS
  3. public/