Loading...
Searching...
No Matches
v8-proxy.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_PROXY_H_
6#define INCLUDE_V8_PROXY_H_
7
8#include "v8-context.h" // NOLINT(build/include_directory)
9#include "v8-local-handle.h" // NOLINT(build/include_directory)
10#include "v8-object.h" // NOLINT(build/include_directory)
11#include "v8config.h" // NOLINT(build/include_directory)
12
13namespace v8 {
14
15class Context;
16
21class V8_EXPORT Proxy : public Object {
22 public:
25 bool IsRevoked() const;
26 void Revoke();
27
32 Local<Object> local_target,
33 Local<Object> local_handler);
34
35 V8_INLINE static Proxy* Cast(Value* value) {
36#ifdef V8_ENABLE_CHECKS
37 CheckCast(value);
38#endif
39 return static_cast<Proxy*>(value);
40 }
41
42 private:
43 Proxy();
44 static void CheckCast(Value* obj);
45};
46
47} // namespace v8
48
49#endif // INCLUDE_V8_PROXY_H_
Definition: v8-local-handle.h:267
Definition: v8-local-handle.h:635
Definition: v8-object.h:233
Definition: v8-proxy.h:21
void Revoke()
Local< Value > GetHandler()
static Proxy * Cast(Value *value)
Definition: v8-proxy.h:35
Local< Value > GetTarget()
static MaybeLocal< Proxy > New(Local< Context > context, Local< Object > local_target, Local< Object > local_handler)
bool IsRevoked() const
Definition: v8-value.h:32
Definition: libplatform.h:15
#define V8_EXPORT
Definition: v8config.h:800
#define V8_INLINE
Definition: v8config.h:500