Loading...
Searching...
No Matches
v8-data.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_DATA_H_
6#define INCLUDE_V8_DATA_H_
7
8#include "v8-local-handle.h" // NOLINT(build/include_directory)
9#include "v8config.h" // NOLINT(build/include_directory)
10
11namespace v8 {
12
13class Context;
14
19 public:
23 bool IsValue() const;
24
28 bool IsModule() const;
29
33 bool IsFixedArray() const;
34
38 bool IsPrivate() const;
39
43 bool IsObjectTemplate() const;
44
48 bool IsFunctionTemplate() const;
49
53 bool IsContext() const;
54
55 private:
56 Data() = delete;
57};
58
62class V8_EXPORT FixedArray : public Data {
63 public:
64 int Length() const;
65 Local<Data> Get(Local<Context> context, int i) const;
66
67 V8_INLINE static FixedArray* Cast(Data* data) {
68#ifdef V8_ENABLE_CHECKS
69 CheckCast(data);
70#endif
71 return reinterpret_cast<FixedArray*>(data);
72 }
73
74 private:
75 static void CheckCast(Data* obj);
76};
77
78} // namespace v8
79
80#endif // INCLUDE_V8_DATA_H_
Definition: v8-data.h:18
bool IsPrivate() const
bool IsModule() const
bool IsContext() const
bool IsValue() const
bool IsFunctionTemplate() const
bool IsFixedArray() const
bool IsObjectTemplate() const
Definition: v8-data.h:62
int Length() const
static FixedArray * Cast(Data *data)
Definition: v8-data.h:67
Local< Data > Get(Local< Context > context, int i) const
Definition: v8-local-handle.h:258
Definition: libplatform.h:15
#define V8_EXPORT
Definition: v8config.h:762
#define V8_INLINE
Definition: v8config.h:477