v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
heap-handle.h
Go to the documentation of this file.
1// Copyright 2022 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef INCLUDE_CPPGC_HEAP_HANDLE_H_
6#define INCLUDE_CPPGC_HEAP_HANDLE_H_
7
8#include "v8config.h" // NOLINT(build/include_directory)
9
10namespace cppgc {
11
12namespace internal {
13class HeapBase;
14class WriteBarrierTypeForCagedHeapPolicy;
15class WriteBarrierTypeForNonCagedHeapPolicy;
16} // namespace internal
17
22 public:
23 // Deleted copy ctor to avoid treating the type by value.
24 HeapHandle(const HeapHandle&) = delete;
25 HeapHandle& operator=(const HeapHandle&) = delete;
26
27 private:
28 HeapHandle() = default;
29
33
37
40
41 friend class internal::HeapBase;
44};
45
46} // namespace cppgc
47
48#endif // INCLUDE_CPPGC_HEAP_HANDLE_H_
HeapHandle & operator=(const HeapHandle &)=delete
HeapHandle(const HeapHandle &)=delete
HeapHandle()=default
bool is_young_generation_enabled_
Definition heap-handle.h:39
V8_INLINE bool is_incremental_marking_in_progress() const
Definition heap-handle.h:30
V8_INLINE bool is_young_generation_enabled() const
Definition heap-handle.h:34
bool is_incremental_marking_in_progress_
Definition heap-handle.h:38
friend class internal::WriteBarrierTypeForCagedHeapPolicy
Definition heap-handle.h:42
#define V8_INLINE
Definition v8config.h:500