v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
weak-object-worklists.cc
Go to the documentation of this file.
1
// Copyright 2020 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
#include "
src/heap/weak-object-worklists.h
"
6
7
#include "
src/heap/heap-inl.h
"
8
#include "
src/heap/heap-layout-inl.h
"
9
#include "
src/heap/heap.h
"
10
#include "
src/objects/hash-table.h
"
11
#include "
src/objects/heap-object.h
"
12
#include "
src/objects/js-function.h
"
13
#include "
src/objects/js-weak-refs-inl.h
"
14
#include "
src/objects/js-weak-refs.h
"
15
#include "
src/objects/shared-function-info.h
"
16
#include "
src/objects/transitions.h
"
17
18
namespace
v8
{
19
20
namespace
internal
{
21
22
WeakObjects::Local::Local
(
WeakObjects
* weak_objects)
23
:
WeakObjects
::
UnusedBase
()
24
#define
INIT_LOCAL_WORKLIST
(
_
, name,
__
) , name##_local(weak_objects->name)
25
WEAK_OBJECT_WORKLISTS
(
INIT_LOCAL_WORKLIST
)
26
#undef
INIT_LOCAL_WORKLIST
27
{
28
}
29
30
void
WeakObjects::Local::Publish
() {
31
#define INVOKE_PUBLISH(_, name, __) name##_local.Publish();
32
WEAK_OBJECT_WORKLISTS
(
INVOKE_PUBLISH
)
33
#undef INVOKE_PUBLISH
34
}
35
36
void
WeakObjects::Clear
() {
37
#define INVOKE_CLEAR(_, name, __) name.Clear();
38
WEAK_OBJECT_WORKLISTS
(
INVOKE_CLEAR
)
39
#undef INVOKE_CLEAR
40
}
41
42
}
// namespace internal
43
}
// namespace v8
__
#define __
Definition
baseline-assembler-arm-inl.h:52
v8::internal::WeakObjects::Local::Local
Local(WeakObjects *weak_objects)
Definition
weak-object-worklists.cc:22
v8::internal::WeakObjects::Local::Publish
V8_EXPORT_PRIVATE void Publish()
Definition
weak-object-worklists.cc:30
v8::internal::WeakObjects::UnusedBase
Definition
weak-object-worklists.h:87
v8::internal::WeakObjects
Definition
weak-object-worklists.h:85
v8::internal::WeakObjects::Clear
void Clear()
Definition
weak-object-worklists.cc:36
hash-table.h
heap-inl.h
heap-layout-inl.h
heap-object.h
_
#define _
Definition
js-call-reducer.cc:54
js-function.h
js-weak-refs-inl.h
js-weak-refs.h
v8::internal::internal
internal
Definition
wasm-objects-inl.h:458
v8
Definition
api-arguments-inl.h:19
shared-function-info.h
heap.h
transitions.h
INVOKE_PUBLISH
#define INVOKE_PUBLISH(_, name, __)
INVOKE_CLEAR
#define INVOKE_CLEAR(_, name, __)
INIT_LOCAL_WORKLIST
#define INIT_LOCAL_WORKLIST(_, name, __)
weak-object-worklists.h
WEAK_OBJECT_WORKLISTS
#define WEAK_OBJECT_WORKLISTS(F)
Definition
weak-object-worklists.h:79
src
heap
weak-object-worklists.cc
Generated on Sun Apr 6 2025 21:08:54 for v8 by
1.12.0