#ifndef PARTITION_ALLOC_PARTITION_LOCK_H_
#define PARTITION_ALLOC_PARTITION_LOCK_H_
#include <atomic>
#include <type_traits>
#include "partition_alloc/build_config.h"
#include "partition_alloc/buildflags.h"
#include "partition_alloc/partition_alloc_base/compiler_specific.h"
#include "partition_alloc/partition_alloc_base/immediate_crash.h"
#include "partition_alloc/partition_alloc_base/thread_annotations.h"
#include "partition_alloc/partition_alloc_base/threading/platform_thread.h"
#include "partition_alloc/partition_alloc_check.h"
#include "partition_alloc/spinning_mutex.h"
#include "partition_alloc/thread_isolation/thread_isolation.h"
namespace partition_alloc::internal {
class PA_LOCKABLE Lock { … };
class PA_SCOPED_LOCKABLE ScopedGuard { … };
class PA_SCOPED_LOCKABLE ScopedUnlockGuard { … };
constexpr Lock::Lock() = default;
static_assert …;
}
namespace base {
namespace internal {
PartitionLock;
PartitionAutoLock;
}
}
#endif