v8
13.6.233 (node 24.1.0)
V8 is Google's open source JavaScript engine
Toggle main menu visibility
Main Page
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Functions
a
c
d
e
f
g
i
j
k
m
n
o
p
r
s
t
u
v
Variables
f
g
i
k
m
t
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerations
a
b
c
e
g
h
i
j
k
l
m
n
p
s
t
w
Enumerator
a
b
c
d
e
g
i
j
k
l
n
o
p
r
s
Concepts
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
Typedefs
a
b
c
d
g
i
m
n
p
r
s
t
u
v
w
Enumerations
a
b
c
d
e
f
g
h
i
m
n
o
p
r
s
t
u
v
w
Enumerator
b
c
d
e
h
j
k
n
o
p
r
s
t
u
w
Related Symbols
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Files
File List
Globals
All
a
c
d
e
p
s
v
Macros
a
c
d
e
p
s
v
Examples
▼
v8
V8 API Reference Guide
►
Namespaces
►
Concepts
►
Data Structures
▼
Files
▼
File List
▼
include
►
cppgc
►
libplatform
►
v8-array-buffer.h
►
v8-callbacks.h
►
v8-container.h
►
v8-context.h
►
v8-cppgc.h
►
v8-data.h
►
v8-date.h
►
v8-debug.h
►
v8-embedder-heap.h
►
v8-embedder-state-scope.h
►
v8-exception.h
►
v8-extension.h
►
v8-external-memory-accounter.h
►
v8-external.h
►
v8-fast-api-calls.h
v8-forward.h
►
v8-function-callback.h
►
v8-function.h
►
v8-handle-base.h
►
v8-initialization.h
v8-inspector-protocol.h
►
v8-inspector.h
►
v8-internal.h
►
v8-isolate.h
►
v8-json.h
►
v8-local-handle.h
►
v8-locker.h
►
v8-maybe.h
►
v8-memory-span.h
►
v8-message.h
►
v8-metrics.h
►
v8-microtask-queue.h
►
v8-microtask.h
►
v8-object.h
►
v8-persistent-handle.h
►
v8-platform.h
►
v8-primitive-object.h
►
v8-primitive.h
►
v8-profiler.h
►
v8-promise.h
►
v8-proxy.h
►
v8-regexp.h
►
v8-sandbox.h
►
v8-script.h
►
v8-snapshot.h
►
v8-source-location.h
►
v8-statistics.h
►
v8-template.h
v8-trace-categories.h
►
v8-traced-handle.h
►
v8-typed-array.h
v8-unwinder-state.h
►
v8-unwinder.h
►
v8-util.h
►
v8-value-serializer-version.h
►
v8-value-serializer.h
►
v8-value.h
►
v8-version-string.h
►
v8-version.h
►
v8-wasm-trap-handler-posix.h
►
v8-wasm-trap-handler-win.h
►
v8-wasm.h
►
v8-weak-callback-info.h
v8.h
►
v8config.h
►
Globals
►
Examples
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Concepts
Loading...
Searching...
No Matches
v8-embedder-state-scope.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 INCLUDE_V8_EMBEDDER_STATE_SCOPE_H_
6
#define INCLUDE_V8_EMBEDDER_STATE_SCOPE_H_
7
8
#include <memory>
9
10
#include "
v8-internal.h
"
// NOLINT(build/include_directory)
11
#include "
v8-local-handle.h
"
// NOLINT(build/include_directory)
12
13
namespace
v8
{
14
15
class
Context
;
16
17
namespace
internal
{
18
class
EmbedderState;
19
}
// namespace internal
20
21
// A StateTag represents a possible state of the embedder.
22
enum class
EmbedderStateTag
: uint8_t {
23
// reserved
24
EMPTY
= 0,
25
OTHER
= 1,
26
// embedder can define any state after
27
};
22
enum class
EmbedderStateTag
: uint8_t {
…
};
28
29
// A stack-allocated class that manages an embedder state on the isolate.
30
// After an EmbedderState scope has been created, a new embedder state will be
31
// pushed on the isolate stack.
32
class
V8_EXPORT
EmbedderStateScope
{
33
public
:
34
EmbedderStateScope
(
Isolate
* isolate,
Local<v8::Context>
context,
35
EmbedderStateTag
tag);
36
37
~EmbedderStateScope
();
38
39
private
:
40
// Declaring operator new and delete as deleted is not spec compliant.
41
// Therefore declare them private instead to disable dynamic alloc
42
void
*
operator
new
(
size_t
size);
43
void
*
operator
new
[](
size_t
size);
44
void
operator
delete
(
void
*, size_t);
45
void
operator
delete
[](
void
*, size_t);
46
47
std::unique_ptr<internal::EmbedderState> embedder_state_;
48
};
32
class
V8_EXPORT
EmbedderStateScope
{
…
};
49
50
}
// namespace v8
51
52
#endif
// INCLUDE_V8_EMBEDDER_STATE_SCOPE_H_
v8::Context
Definition
v8-context.h:48
v8::EmbedderStateScope::~EmbedderStateScope
~EmbedderStateScope()
v8::EmbedderStateScope::EmbedderStateScope
EmbedderStateScope(Isolate *isolate, Local< v8::Context > context, EmbedderStateTag tag)
v8::Isolate
Definition
v8-isolate.h:274
v8::Local
Definition
v8-local-handle.h:267
v8::internal
Definition
v8-cppgc.h:29
v8
Definition
libplatform.h:15
v8::OTHER
@ OTHER
Definition
v8-unwinder.h:42
v8::EmbedderStateTag
EmbedderStateTag
Definition
v8-embedder-state-scope.h:22
v8::EmbedderStateTag::EMPTY
@ EMPTY
Definition
v8-embedder-state-scope.h:24
v8-internal.h
v8-local-handle.h
V8_EXPORT
#define V8_EXPORT
Definition
v8config.h:800
include
v8-embedder-state-scope.h
Generated on Fri May 30 2025 01:56:44 for v8 by
1.13.2