v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
embedder-state.h
Go to the documentation of this file.
1
// Copyright 2021 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 V8_EXECUTION_EMBEDDER_STATE_H_
6
#define V8_EXECUTION_EMBEDDER_STATE_H_
7
8
#include "
include/v8-local-handle.h
"
9
#include "
src/execution/isolate.h
"
10
11
namespace
v8
{
12
13
enum class
EmbedderStateTag
: uint8_t;
14
15
namespace
internal
{
16
class
V8_EXPORT_PRIVATE
EmbedderState
{
17
public
:
18
EmbedderState
(
v8::Isolate
* isolate,
Local<v8::Context>
context,
19
EmbedderStateTag
tag);
20
21
~EmbedderState
();
22
23
EmbedderStateTag
GetState
()
const
{
return
tag_; }
24
25
Address
native_context_address
()
const
{
return
native_context_address_; }
26
27
void
OnMoveEvent(Address from, Address to);
28
29
private
:
30
Isolate
*
isolate_
;
31
EmbedderStateTag
tag_
;
32
Address native_context_address_ = kNullAddress;
33
EmbedderState
*
previous_embedder_state_
;
34
};
35
}
// namespace internal
36
37
}
// namespace v8
38
39
#endif
// V8_EXECUTION_EMBEDDER_STATE_H_
v8::Isolate
Definition
v8-isolate.h:274
v8::Local
Definition
v8-local-handle.h:267
v8::internal::EmbedderState
Definition
embedder-state.h:16
v8::internal::EmbedderState::isolate_
Isolate * isolate_
Definition
embedder-state.h:30
v8::internal::EmbedderState::tag_
EmbedderStateTag tag_
Definition
embedder-state.h:31
v8::internal::EmbedderState::native_context_address
Address native_context_address() const
Definition
embedder-state.h:25
v8::internal::EmbedderState::previous_embedder_state_
EmbedderState * previous_embedder_state_
Definition
embedder-state.h:33
v8::internal::EmbedderState::GetState
EmbedderStateTag GetState() const
Definition
embedder-state.h:23
v8::internal::Isolate
Definition
isolate.h:586
isolate.h
v8::internal::internal
internal
Definition
wasm-objects-inl.h:458
v8
Definition
api-arguments-inl.h:19
v8::EmbedderStateTag
EmbedderStateTag
Definition
v8-embedder-state-scope.h:22
V8_EXPORT_PRIVATE
#define V8_EXPORT_PRIVATE
Definition
macros.h:460
v8-local-handle.h
src
execution
embedder-state.h
Generated on Sun Apr 6 2025 21:08:53 for v8 by
1.12.0