chromium/base/task/sequence_manager/atomic_flag_set.cc

// Copyright 2019 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/sequence_manager/atomic_flag_set.h"

#include <bit>
#include <utility>

#include "base/check_op.h"
#include "base/functional/callback.h"

namespace base::sequence_manager::internal {

AtomicFlagSet::AtomicFlagSet(
    scoped_refptr<const AssociatedThreadId> associated_thread)
    :{}

AtomicFlagSet::~AtomicFlagSet() {}

AtomicFlagSet::AtomicFlag::AtomicFlag() = default;

AtomicFlagSet::AtomicFlag::~AtomicFlag() {}

AtomicFlagSet::AtomicFlag::AtomicFlag(AtomicFlagSet* outer,
                                      Group* element,
                                      size_t flag_bit)
    :{}

AtomicFlagSet::AtomicFlag::AtomicFlag(AtomicFlag&& other)
    :{}

void AtomicFlagSet::AtomicFlag::SetActive(bool active) {}

void AtomicFlagSet::AtomicFlag::ReleaseAtomicFlag() {}

AtomicFlagSet::AtomicFlag AtomicFlagSet::AddFlag(RepeatingClosure callback) {}

void AtomicFlagSet::RunActiveCallbacks() const {}

AtomicFlagSet::Group::Group() = default;

AtomicFlagSet::Group::~Group() {}

bool AtomicFlagSet::Group::IsFull() const {}

bool AtomicFlagSet::Group::IsEmpty() const {}

size_t AtomicFlagSet::Group::FindFirstUnallocatedFlag() const {}

// static
size_t AtomicFlagSet::Group::IndexOfFirstFlagSet(size_t flag) {}

void AtomicFlagSet::AddToAllocList(std::unique_ptr<Group> group) {}

void AtomicFlagSet::RemoveFromAllocList(Group* group) {}

void AtomicFlagSet::AddToPartiallyFreeList(Group* group) {}

void AtomicFlagSet::RemoveFromPartiallyFreeList(Group* group) {}

}  // namespace base::sequence_manager::internal