1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "components/scheduler/child/cancelable_closure_holder.h"
9 CancelableClosureHolder::CancelableClosureHolder() {
12 CancelableClosureHolder::~CancelableClosureHolder() {
15 void CancelableClosureHolder::Reset(const base::Closure
& callback
) {
17 cancelable_callback_
.Reset(callback_
);
20 void CancelableClosureHolder::Cancel() {
21 DCHECK(!callback_
.is_null());
22 cancelable_callback_
.Reset(callback_
);
25 const base::Closure
& CancelableClosureHolder::callback() const {
26 DCHECK(!callback_
.is_null());
27 return cancelable_callback_
.callback();
30 } // namespace scheduler