chromium/base/task/thread_pool/priority_queue.cc

// Copyright 2016 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "base/task/thread_pool/priority_queue.h"

#include <utility>

#include "base/check_op.h"
#include "base/memory/ptr_util.h"
#include "base/types/cxx23_to_underlying.h"

namespace base {
namespace internal {

// A class combining a TaskSource and the TaskSourceSortKey that determines its
// position in a PriorityQueue. Instances are only mutable via
// take_task_source() which can only be called once and renders its instance
// invalid after the call.
class PriorityQueue::TaskSourceAndSortKey {};

PriorityQueue::PriorityQueue() = default;

PriorityQueue::~PriorityQueue() {}

PriorityQueue& PriorityQueue::operator=(PriorityQueue&& other) = default;

void PriorityQueue::Push(RegisteredTaskSource task_source,
                         TaskSourceSortKey task_source_sort_key) {}

const TaskSourceSortKey& PriorityQueue::PeekSortKey() const {}

RegisteredTaskSource& PriorityQueue::PeekTaskSource() const {}

RegisteredTaskSource PriorityQueue::PopTaskSource() {}

RegisteredTaskSource PriorityQueue::RemoveTaskSource(
    const TaskSource& task_source) {}

void PriorityQueue::UpdateSortKey(const TaskSource& task_source,
                                  TaskSourceSortKey sort_key) {}

bool PriorityQueue::IsEmpty() const {}

size_t PriorityQueue::Size() const {}

void PriorityQueue::EnableFlushTaskSourcesOnDestroyForTesting() {}

void PriorityQueue::swap(PriorityQueue& other) {}

void PriorityQueue::DecrementNumTaskSourcesForPriority(TaskPriority priority) {}

void PriorityQueue::IncrementNumTaskSourcesForPriority(TaskPriority priority) {}

}  // namespace internal
}  // namespace base