1 |
|
|
#ifndef SRC_NODE_V8_H_ |
2 |
|
|
#define SRC_NODE_V8_H_ |
3 |
|
|
|
4 |
|
|
#if defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS |
5 |
|
|
|
6 |
|
|
#include "aliased_buffer.h" |
7 |
|
|
#include "base_object.h" |
8 |
|
|
#include "node_snapshotable.h" |
9 |
|
|
#include "util.h" |
10 |
|
|
#include "v8.h" |
11 |
|
|
|
12 |
|
|
namespace node { |
13 |
|
|
class Environment; |
14 |
|
|
struct InternalFieldInfoBase; |
15 |
|
|
|
16 |
|
|
namespace v8_utils { |
17 |
|
|
class BindingData : public SnapshotableObject { |
18 |
|
|
public: |
19 |
|
|
BindingData(Environment* env, v8::Local<v8::Object> obj); |
20 |
|
|
|
21 |
|
|
using InternalFieldInfo = InternalFieldInfoBase; |
22 |
|
|
|
23 |
|
|
SERIALIZABLE_OBJECT_METHODS() |
24 |
|
|
static constexpr FastStringKey type_name{"node::v8::BindingData"}; |
25 |
|
|
static constexpr EmbedderObjectType type_int = |
26 |
|
|
EmbedderObjectType::k_v8_binding_data; |
27 |
|
|
|
28 |
|
|
AliasedFloat64Array heap_statistics_buffer; |
29 |
|
|
AliasedFloat64Array heap_space_statistics_buffer; |
30 |
|
|
AliasedFloat64Array heap_code_statistics_buffer; |
31 |
|
|
|
32 |
|
|
void MemoryInfo(MemoryTracker* tracker) const override; |
33 |
|
24 |
SET_SELF_SIZE(BindingData) |
34 |
|
24 |
SET_MEMORY_INFO_NAME(BindingData) |
35 |
|
|
}; |
36 |
|
|
|
37 |
|
|
} // namespace v8_utils |
38 |
|
|
|
39 |
|
|
} // namespace node |
40 |
|
|
|
41 |
|
|
#endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS |
42 |
|
|
|
43 |
|
|
#endif // SRC_NODE_V8_H_ |