Support rvalue-reference Runnables in base::Bind internals
This is a preparation of base::Bind for move-only variants of Callback,
and also a preparation of the oneshot variant of Callback.
On InvokeHelper mod, this CL moves Runnable from a class template
parameter to a function template parameter of InvokeHelper::MakeItSo,
so that it can run &&-qualified Run() method via rvalue-reference
Runnable.
On BindState mod, BindState ctor will forward Runnable as Perfect
Forwarding into its internal storage. So that BindState can hold
move-only Runnable into it.
BUG=554299
Review-Url: https://codereview.chromium.org/1798403002
Cr-Commit-Position: refs/heads/master@{#397083}
CrOS-Libchrome-Original-Commit: ee2487294417a82adfc854aa680c7765eef7494e
1 file changed