DescriptionUse OnceCallback on Mojo interfaces in //chrome/common/extensions
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
//chrome/common/extensions 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/2867013002
Cr-Commit-Position: refs/heads/master@{#470922}
Committed: https://chromium.googlesource.com/chromium/src/+/38559e13df29a3e51b30304bd78202350b8332b3
Patch Set 1 #Patch Set 2 : rebase. +#include. fix #Patch Set 3 : rebase #
Messages
Total messages: 22 (16 generated)
|