// Copyright 2018 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "base/task/sequence_manager/task_queue_task_runner.h" #include "base/task/sequence_manager/task_queue.h" namespace base { namespace sequence_manager { namespace internal { TaskQueueTaskRunner::TaskQueueTaskRunner(scoped_refptr task_queue, int task_type) : task_queue_(task_queue), task_type_(task_type) {} TaskQueueTaskRunner::~TaskQueueTaskRunner() {} bool TaskQueueTaskRunner::PostDelayedTask(const Location& location, OnceClosure callback, TimeDelta delay) { return task_queue_->PostTaskWithMetadata(TaskQueue::PostedTask( std::move(callback), location, delay, Nestable::kNestable, task_type_)); } bool TaskQueueTaskRunner::PostNonNestableDelayedTask(const Location& location, OnceClosure callback, TimeDelta delay) { return task_queue_->PostTaskWithMetadata( TaskQueue::PostedTask(std::move(callback), location, delay, Nestable::kNonNestable, task_type_)); } bool TaskQueueTaskRunner::RunsTasksInCurrentSequence() const { return task_queue_->RunsTasksInCurrentSequence(); } } // namespace internal } // namespace sequence_manager } // namespace base