v8
10.1.124 (node 18.2.0)
V8 is Google's open source JavaScript engine
v8-proxy.h
Go to the documentation of this file.
1
2
// Copyright 2021 the V8 project authors. All rights reserved.
3
// Use of this source code is governed by a BSD-style license that can be
4
// found in the LICENSE file.
5
6
#
ifndef
INCLUDE_V8_PROXY_H_
7
#
define
INCLUDE_V8_PROXY_H_
8
9
#
include
"v8-context.h"
// NOLINT(build/include_directory)
10
#
include
"v8-local-handle.h"
// NOLINT(build/include_directory)
11
#
include
"v8-object.h"
// NOLINT(build/include_directory)
12
#
include
"v8config.h"
// NOLINT(build/include_directory)
13
14
namespace
v8
{
15
16
class
Context
;
17
18
/**
19
* An instance of the built-in Proxy constructor (ECMA-262, 6th Edition,
20
* 26.2.1).
21
*/
22
class
V8_EXPORT
Proxy
:
public
Object
{
23
public
:
24
Local
<
Value
>
GetTarget
();
25
Local
<
Value
>
GetHandler
();
26
bool
IsRevoked
()
const
;
27
void
Revoke
();
28
29
/**
30
* Creates a new Proxy for the target object.
31
*/
32
static
MaybeLocal
<
Proxy
>
New
(
Local
<
Context
> context,
33
Local
<
Object
> local_target,
34
Local
<
Object
> local_handler);
35
36
V8_INLINE
static
Proxy
*
Cast
(
Value
* value) {
37
#
ifdef
V8_ENABLE_CHECKS
38
CheckCast(value);
39
#
endif
40
return
static_cast
<
Proxy
*>(value);
41
}
42
43
private
:
44
Proxy();
45
static
void
CheckCast(
Value
* obj);
46
};
47
48
}
// namespace v8
49
50
#
endif
// INCLUDE_V8_PROXY_H_
include
v8-proxy.h
Generated on Tue May 24 2022 19:29:02 for v8 by
1.9.1