V8: include/v8-callbacks.h Source File (original) (raw)

1

2

3

4

5#ifndef INCLUDE_V8_ISOLATE_CALLBACKS_H_

6#define INCLUDE_V8_ISOLATE_CALLBACKS_H_

7

8#include <stddef.h>

9

10#include

11#include

12

14#include "v8-data.h"

16#include "v8-promise.h"

17#include "v8config.h"

18

19#if defined(V8_OS_WIN)

20struct _EXCEPTION_POINTERS;

21#endif

22

23namespace v8 {

24

25template

26class FunctionCallbackInfo;

27class Isolate;

28class Message;

29class Module;

30class Object;

31class Promise;

32class ScriptOrModule;

33class String;

34class UnboundScript;

35class Value;

36

51

52

53

54

55

57

58

59

60

61

62

63

65

66

69

71

73

75

76

77

78

80

82

83

85

87 };

88

90

92

94

96 };

97

99

101

103

104

106

108 };

109

111

112 union {

113

115

116

118

119

121 };

122

124};

125

131

133

136

143

144

145

164

188};

189

191

193

196

205 size_t initial_heap_limit);

206

210#if defined(V8_OS_WIN)

211using UnhandledExceptionCallback =

212 int (*)(_EXCEPTION_POINTERS* exception_pointers);

213#endif

214

215

216

218

220 size_t buckets);

221

223

224

225

227

231};

232

235

238 void* data);

239

241

242

243

246 int status);

247

248

259};

260

262

263

266

270 std::function<void(CrashKey key, const std::string_view value)>;

271

272

275

276

278

280

281

282

284};

285

296 bool is_code_like);

297

298

299

310

313

314

316

319

320

321

323

324

326

328

329

333

334

336 const char* name);

337

338

340

341

344

352};

353

384

425

432

446

460

468

479

480#if defined(V8_OS_WIN)

517using FilterETWSessionByURLCallback =

518 bool (*)(Local context, const std::string& etw_filter_payload);

519

520struct FilterETWSessionByURLResult {

521

522 bool enable_etw_tracing;

523

524

525 bool trace_interpreter_frames;

526};

527using FilterETWSessionByURL2Callback = FilterETWSessionByURLResult (*)(

528 Local context, const std::string& etw_filter_payload);

529#endif

530

531}

532

533#endif

Definition: v8-function-callback.h:121

Definition: v8-isolate.h:291

Definition: v8-local-handle.h:366

Definition: v8-local-handle.h:734

Definition: libplatform.h:15

void(*)(const JitCodeEvent *event) JitCodeEventHandler

Definition: v8-callbacks.h:142

JitCodeEventOptions

Definition: v8-callbacks.h:129

@ kJitCodeEventEnumExisting

Definition: v8-callbacks.h:132

@ kLastJitCodeEventOption

Definition: v8-callbacks.h:134

@ kJitCodeEventDefault

Definition: v8-callbacks.h:130

void(*)(const char *location, const OOMDetails &details) OOMErrorCallback

Definition: v8-callbacks.h:234

ModifyCodeGenerationFromStringsResult(*)(Local< Context > context, Local< Value > source) ModifyCodeGenerationFromStringsCallback

Definition: v8-callbacks.h:292

void * CrashKey

Definition: v8-callbacks.h:264

bool(*)(Local< Context > context) SharedArrayBufferConstructorEnabledCallback

Definition: v8-callbacks.h:343

GCCallbackFlags

Definition: v8-callbacks.h:179

@ kGCCallbackScheduleIdleGarbageCollection

Definition: v8-callbacks.h:186

@ kGCCallbackFlagConstructRetainedObjectInfos

Definition: v8-callbacks.h:181

@ kGCCallbackFlagForced

Definition: v8-callbacks.h:182

@ kNoGCCallbackFlags

Definition: v8-callbacks.h:180

@ kGCCallbackFlagCollectAllExternalMemory

Definition: v8-callbacks.h:185

@ kGCCallbackFlagSynchronousPhantomCallbackProcessing

Definition: v8-callbacks.h:183

@ kGCCallbackFlagLastResort

Definition: v8-callbacks.h:187

@ kGCCallbackFlagCollectAllAvailableGarbage

Definition: v8-callbacks.h:184

CrashKeyId

Definition: v8-callbacks.h:249

@ kSnapshotChecksumCalculated

@ kCodeSpaceFirstPageAddress

@ kOldSpaceFirstPageAddress

@ kMapSpaceFirstPageAddress

@ kReadonlySpaceFirstPageAddress

@ kSnapshotChecksumExpected

LogEventStatus

Definition: v8-callbacks.h:244

@ kEnd

Definition: v8-callbacks.h:244

@ kStart

Definition: v8-callbacks.h:244

@ kLog

Definition: v8-callbacks.h:244

bool(*)(Local< Context > context) WasmCustomDescriptorsEnabledCallback

Definition: v8-callbacks.h:339

void(*)(Isolate *isolate, Local< Context > context, Local< Promise::Resolver > resolver, Local< Value > result, WasmAsyncSuccess success) WasmAsyncResolvePromiseCallback

Definition: v8-callbacks.h:332

bool(*)(const FunctionCallbackInfo< Value > &) ExtensionCallback

Definition: v8-callbacks.h:315

void(*)(const FunctionCallbackInfo< Value > &) WasmStreamingCallback

Definition: v8-callbacks.h:325

void *(*)(const char *name, int min, int max, size_t buckets) CreateHistogramCallback

Definition: v8-callbacks.h:220

void(*)(Local< Context > context, Local< Module > module, Local< Object > meta) HostInitializeImportMetaObjectCallback

Definition: v8-callbacks.h:445

void(*)(Local< Message > message, Local< Value > data) MessageCallback

Definition: v8-callbacks.h:240

CrashKeySize

Definition: v8-callbacks.h:265

void(*)(const char *location, const OOMDetails &details, void *data) OOMErrorCallbackWithData

Definition: v8-callbacks.h:238

void(*)(GCType type, GCCallbackFlags flags) GCCallback

Definition: v8-callbacks.h:190

void(*)(CrashKeyId id, const std::string &value) AddCrashKeyCallback

Definition: v8-callbacks.h:261

void(*)(Isolate *isolate, void *data) InterruptCallback

Definition: v8-callbacks.h:192

void(*)(Isolate *) CallCompletedCallback

Definition: v8-callbacks.h:274

void(*)(void *histogram, int sample) AddHistogramSampleCallback

Definition: v8-callbacks.h:222

bool(*)(Isolate *isolate, Local< String > script_name) PrintCurrentStackTraceFilterCallback

Definition: v8-callbacks.h:195

size_t(*)(void *data, size_t current_heap_limit, size_t initial_heap_limit) NearHeapLimitCallback

Definition: v8-callbacks.h:205

void(*)(Isolate *) BeforeCallEnteredCallback

Definition: v8-callbacks.h:273

bool(*)(Local< Context > context, Local< String > source) AllowWasmCodeGenerationCallback

Definition: v8-callbacks.h:318

void(*)(const char *location, const char *message) FatalErrorCallback

Definition: v8-callbacks.h:226

WasmAsyncSuccess

Definition: v8-callbacks.h:327

GCType

Definition: v8-callbacks.h:154

@ kGCTypeMinorMarkSweep

Definition: v8-callbacks.h:156

@ kGCTypeScavenge

Definition: v8-callbacks.h:155

@ kGCTypeProcessWeakCallbacks

Definition: v8-callbacks.h:159

@ kGCTypeMarkSweepCompact

Definition: v8-callbacks.h:157

@ kGCTypeAll

Definition: v8-callbacks.h:160

@ kGCTypeIncrementalMarking

Definition: v8-callbacks.h:158

std::function< void(CrashKey key, const std::string_view value)> SetCrashKeyStringCallback

Definition: v8-callbacks.h:270

bool(*)(int, void *) CompileHintCallback

Definition: v8-callbacks.h:431

void(*)(const FunctionCallbackInfo< Value > &) ApiImplementationCallback

Definition: v8-callbacks.h:322

ModifyCodeGenerationFromStringsResult(*)(Local< Context > context, Local< Value > source, bool is_code_like) ModifyCodeGenerationFromStringsCallback2

Definition: v8-callbacks.h:296

void(*)(Local< Object > target, AccessType type, Local< Value > data) FailedAccessCheckCallback

Definition: v8-callbacks.h:312

AccessType

Definition: v8-callbacks.h:303

@ ACCESS_SET

Definition: v8-callbacks.h:305

@ ACCESS_HAS

Definition: v8-callbacks.h:306

@ ACCESS_KEYS

Definition: v8-callbacks.h:308

@ ACCESS_GET

Definition: v8-callbacks.h:304

@ ACCESS_DELETE

Definition: v8-callbacks.h:307

void(*)(const char *name, int status) LogEventCallback

Definition: v8-callbacks.h:246

std::function< CrashKey(const char key[], CrashKeySize size)> AllocateCrashKeyStringCallback

Definition: v8-callbacks.h:268

int *(*)(const char *name) CounterLookupCallback

Definition: v8-callbacks.h:217

bool(*)(Isolate *isolate, Local< Object > obj) IsJSApiWrapperNativeErrorCallback

Definition: v8-callbacks.h:467

ModuleImportPhase

Definition: v8-callbacks.h:348

Definition: v8-callbacks.h:89

size_t offset

Definition: v8-callbacks.h:91

size_t pos

Definition: v8-callbacks.h:93

PositionType position_type

Definition: v8-callbacks.h:95

Definition: v8-callbacks.h:81

const char * str

Definition: v8-callbacks.h:84

size_t len

Definition: v8-callbacks.h:86

Definition: v8-callbacks.h:98

const char * filename

Definition: v8-callbacks.h:100

const line_info_t * line_number_table

Definition: v8-callbacks.h:105

size_t filename_size

Definition: v8-callbacks.h:102

size_t line_number_table_size

Definition: v8-callbacks.h:107

Definition: v8-callbacks.h:42

PositionType

Definition: v8-callbacks.h:56

@ POSITION

Definition: v8-callbacks.h:56

@ STATEMENT_POSITION

Definition: v8-callbacks.h:56

CodeType

Definition: v8-callbacks.h:64

@ JIT_CODE

Definition: v8-callbacks.h:64

@ BYTE_CODE

Definition: v8-callbacks.h:64

@ WASM_CODE

Definition: v8-callbacks.h:64

struct name_t name

Definition: v8-callbacks.h:114

Local< UnboundScript > script

Definition: v8-callbacks.h:74

struct line_info_t line_info

Definition: v8-callbacks.h:117

Isolate * isolate

Definition: v8-callbacks.h:123

void * user_data

Definition: v8-callbacks.h:79

wasm_source_info_t * wasm_source_info

Definition: v8-callbacks.h:110

void * new_code_start

Definition: v8-callbacks.h:120

EventType

Definition: v8-callbacks.h:43

@ CODE_END_LINE_INFO_RECORDING

Definition: v8-callbacks.h:49

@ CODE_ADDED

Definition: v8-callbacks.h:44

@ CODE_MOVED

Definition: v8-callbacks.h:45

@ CODE_ADD_LINE_POS_INFO

Definition: v8-callbacks.h:47

@ CODE_REMOVED

Definition: v8-callbacks.h:46

@ CODE_START_LINE_INFO_RECORDING

Definition: v8-callbacks.h:48

EventType type

Definition: v8-callbacks.h:67

size_t code_len

Definition: v8-callbacks.h:72

void * code_start

Definition: v8-callbacks.h:70

CodeType code_type

Definition: v8-callbacks.h:68

Definition: v8-callbacks.h:277

bool codegen_allowed

Definition: v8-callbacks.h:279

MaybeLocal< String > modified_source

Definition: v8-callbacks.h:283

Definition: v8-callbacks.h:228

const char * detail

Definition: v8-callbacks.h:230

bool is_heap_oom

Definition: v8-callbacks.h:229

#define V8_ENUM_DEPRECATE_SOON(message)

Definition: v8config.h:659