14class CancelableFuncTask final : 
public CancelableTask {
 
   16  CancelableFuncTask(Isolate* isolate, std::function<
void()> func)
 
   17      : CancelableTask(isolate), 
func_(
std::move(func)) {}
 
   18  CancelableFuncTask(CancelableTaskManager* manager, std::function<
void()> func)
 
   19      : CancelableTask(manager), 
func_(
std::move(func)) {}
 
   20  void RunInternal() final { 
func_(); }
 
   23  const std::function<void()> 
func_;
 
   26class CancelableIdleFuncTask final : 
public CancelableIdleTask {
 
   28  CancelableIdleFuncTask(Isolate* isolate, std::function<
void(
double)> func)
 
   29      : CancelableIdleTask(isolate), 
func_(std::move(func)) {}
 
   30  CancelableIdleFuncTask(CancelableTaskManager* manager,
 
   31                         std::function<
void(
double)> func)
 
   32      : CancelableIdleTask(manager), 
func_(
std::move(func)) {}
 
   33  void RunInternal(
double deadline_in_seconds) 
final {
 
   34    func_(deadline_in_seconds);
 
   38  const std::function<void(
double)> 
func_;
 
   44                                                   std::function<
void()> func) {
 
   45  return std::make_unique<CancelableFuncTask>(isolate, std::move(func));
 
 
   50  return std::make_unique<CancelableFuncTask>(manager, std::move(func));
 
 
   54    Isolate* isolate, std::function<
void(
double)> func) {
 
   55  return std::make_unique<CancelableIdleFuncTask>(isolate, std::move(func));
 
 
   60  return std::make_unique<CancelableIdleFuncTask>(manager, std::move(func));
 
 
std::unique_ptr< CancelableIdleTask > MakeCancelableIdleTask(Isolate *isolate, std::function< void(double)> func)
std::unique_ptr< CancelableTask > MakeCancelableTask(Isolate *isolate, std::function< void()> func)
const std::function< void()> func_