Repo created
This commit is contained in:
parent
81b91f4139
commit
f8c34fa5ee
22732 changed files with 4815320 additions and 2 deletions
|
|
@ -0,0 +1,46 @@
|
|||
// 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/containers/intrusive_heap.h"
|
||||
|
||||
#include "base/logging.h"
|
||||
#include "base/memory/ptr_util.h"
|
||||
|
||||
namespace base {
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// HeapHandle
|
||||
|
||||
// static
|
||||
HeapHandle HeapHandle::Invalid() {
|
||||
return HeapHandle();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// InternalHeapHandleStorage
|
||||
|
||||
InternalHeapHandleStorage::InternalHeapHandleStorage()
|
||||
: handle_(new HeapHandle()) {}
|
||||
|
||||
InternalHeapHandleStorage::InternalHeapHandleStorage(
|
||||
InternalHeapHandleStorage&& other) noexcept
|
||||
: handle_(std::move(other.handle_)) {
|
||||
DCHECK(intrusive_heap::IsInvalid(other.handle_));
|
||||
}
|
||||
|
||||
InternalHeapHandleStorage::~InternalHeapHandleStorage() = default;
|
||||
|
||||
InternalHeapHandleStorage& InternalHeapHandleStorage::operator=(
|
||||
InternalHeapHandleStorage&& other) noexcept {
|
||||
handle_ = std::move(other.handle_);
|
||||
DCHECK(intrusive_heap::IsInvalid(other.handle_));
|
||||
return *this;
|
||||
}
|
||||
|
||||
void InternalHeapHandleStorage::swap(
|
||||
InternalHeapHandleStorage& other) noexcept {
|
||||
std::swap(handle_, other.handle_);
|
||||
}
|
||||
|
||||
} // namespace base
|
||||
Loading…
Add table
Add a link
Reference in a new issue