libv8-node 19.9.0.0-arm64-darwin → 20.2.0.0-arm64-darwin
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/libv8/node/version.rb +3 -3
- data/vendor/v8/arm64-darwin/libv8/obj/libv8_monolith.a +0 -0
- data/vendor/v8/include/cppgc/cross-thread-persistent.h +4 -2
- data/vendor/v8/include/cppgc/heap-consistency.h +2 -2
- data/vendor/v8/include/cppgc/heap-handle.h +5 -0
- data/vendor/v8/include/cppgc/internal/api-constants.h +4 -1
- data/vendor/v8/include/cppgc/internal/gc-info.h +35 -33
- data/vendor/v8/include/cppgc/internal/member-storage.h +19 -7
- data/vendor/v8/include/cppgc/internal/pointer-policies.h +38 -2
- data/vendor/v8/include/cppgc/internal/write-barrier.h +15 -5
- data/vendor/v8/include/cppgc/macros.h +10 -1
- data/vendor/v8/include/cppgc/member.h +167 -129
- data/vendor/v8/include/cppgc/persistent.h +22 -15
- data/vendor/v8/include/cppgc/platform.h +6 -4
- data/vendor/v8/include/cppgc/type-traits.h +4 -3
- data/vendor/v8/include/cppgc/visitor.h +16 -1
- data/vendor/v8/include/libplatform/v8-tracing.h +2 -2
- data/vendor/v8/include/v8-array-buffer.h +59 -0
- data/vendor/v8/include/v8-callbacks.h +14 -1
- data/vendor/v8/include/v8-context.h +50 -3
- data/vendor/v8/include/v8-cppgc.h +10 -0
- data/vendor/v8/include/v8-data.h +1 -1
- data/vendor/v8/include/v8-embedder-heap.h +0 -169
- data/vendor/v8/include/v8-fast-api-calls.h +7 -3
- data/vendor/v8/include/v8-function-callback.h +69 -42
- data/vendor/v8/include/v8-function.h +1 -0
- data/vendor/v8/include/v8-inspector.h +20 -5
- data/vendor/v8/include/v8-internal.h +242 -150
- data/vendor/v8/include/v8-isolate.h +30 -40
- data/vendor/v8/include/v8-local-handle.h +81 -48
- data/vendor/v8/include/v8-metrics.h +28 -2
- data/vendor/v8/include/v8-microtask-queue.h +5 -0
- data/vendor/v8/include/v8-object.h +21 -3
- data/vendor/v8/include/v8-persistent-handle.h +25 -16
- data/vendor/v8/include/v8-platform.h +79 -10
- data/vendor/v8/include/v8-primitive.h +19 -12
- data/vendor/v8/include/v8-profiler.h +49 -31
- data/vendor/v8/include/v8-script.h +29 -1
- data/vendor/v8/include/v8-snapshot.h +4 -8
- data/vendor/v8/include/v8-template.h +3 -1
- data/vendor/v8/include/v8-traced-handle.h +22 -28
- data/vendor/v8/include/v8-util.h +9 -3
- data/vendor/v8/include/v8-value.h +31 -4
- data/vendor/v8/include/v8-version.h +4 -4
- data/vendor/v8/include/v8-wasm.h +2 -1
- data/vendor/v8/include/v8config.h +73 -2
- metadata +1 -1
@@ -21,6 +21,7 @@ class Value;
|
|
21
21
|
namespace internal {
|
22
22
|
class FunctionCallbackArguments;
|
23
23
|
class PropertyCallbackArguments;
|
24
|
+
class Builtins;
|
24
25
|
} // namespace internal
|
25
26
|
|
26
27
|
namespace debug {
|
@@ -74,6 +75,11 @@ class ReturnValue {
|
|
74
75
|
V8_INLINE void SetInternal(internal::Address value) { *value_ = value; }
|
75
76
|
V8_INLINE internal::Address GetDefaultValue();
|
76
77
|
V8_INLINE explicit ReturnValue(internal::Address* slot);
|
78
|
+
|
79
|
+
// See FunctionCallbackInfo.
|
80
|
+
static constexpr int kIsolateValueIndex = -2;
|
81
|
+
static constexpr int kDefaultValueValueIndex = -1;
|
82
|
+
|
77
83
|
internal::Address* value_;
|
78
84
|
};
|
79
85
|
|
@@ -116,19 +122,35 @@ class FunctionCallbackInfo {
|
|
116
122
|
V8_INLINE Isolate* GetIsolate() const;
|
117
123
|
/** The ReturnValue for the call. */
|
118
124
|
V8_INLINE ReturnValue<T> GetReturnValue() const;
|
119
|
-
// This shouldn't be public, but the arm compiler needs it.
|
120
|
-
static const int kArgsLength = 6;
|
121
125
|
|
122
|
-
|
126
|
+
private:
|
123
127
|
friend class internal::FunctionCallbackArguments;
|
124
128
|
friend class internal::CustomArguments<FunctionCallbackInfo>;
|
125
129
|
friend class debug::ConsoleCallArguments;
|
126
|
-
|
127
|
-
static
|
128
|
-
static
|
129
|
-
static
|
130
|
-
static
|
131
|
-
static
|
130
|
+
friend class internal::Builtins;
|
131
|
+
static constexpr int kHolderIndex = 0;
|
132
|
+
static constexpr int kIsolateIndex = 1;
|
133
|
+
static constexpr int kReturnValueDefaultValueIndex = 2;
|
134
|
+
static constexpr int kReturnValueIndex = 3;
|
135
|
+
static constexpr int kDataIndex = 4;
|
136
|
+
static constexpr int kNewTargetIndex = 5;
|
137
|
+
|
138
|
+
static constexpr int kArgsLength = 6;
|
139
|
+
static constexpr int kArgsLengthWithReceiver = 7;
|
140
|
+
|
141
|
+
// Codegen constants:
|
142
|
+
static constexpr int kSize = 3 * internal::kApiSystemPointerSize;
|
143
|
+
static constexpr int kImplicitArgsOffset = 0;
|
144
|
+
static constexpr int kValuesOffset =
|
145
|
+
kImplicitArgsOffset + internal::kApiSystemPointerSize;
|
146
|
+
static constexpr int kLengthOffset =
|
147
|
+
kValuesOffset + internal::kApiSystemPointerSize;
|
148
|
+
|
149
|
+
static constexpr int kThisValuesIndex = -1;
|
150
|
+
static_assert(ReturnValue<Value>::kDefaultValueValueIndex ==
|
151
|
+
kReturnValueDefaultValueIndex - kReturnValueIndex);
|
152
|
+
static_assert(ReturnValue<Value>::kIsolateValueIndex ==
|
153
|
+
kIsolateIndex - kReturnValueIndex);
|
132
154
|
|
133
155
|
V8_INLINE FunctionCallbackInfo(internal::Address* implicit_args,
|
134
156
|
internal::Address* values, int length);
|
@@ -229,22 +251,24 @@ class PropertyCallbackInfo {
|
|
229
251
|
*/
|
230
252
|
V8_INLINE bool ShouldThrowOnError() const;
|
231
253
|
|
232
|
-
|
233
|
-
static const int kArgsLength = 7;
|
234
|
-
|
235
|
-
protected:
|
254
|
+
private:
|
236
255
|
friend class MacroAssembler;
|
237
256
|
friend class internal::PropertyCallbackArguments;
|
238
257
|
friend class internal::CustomArguments<PropertyCallbackInfo>;
|
239
|
-
static
|
240
|
-
static
|
241
|
-
static
|
242
|
-
static
|
243
|
-
static
|
244
|
-
static
|
245
|
-
static
|
246
|
-
|
247
|
-
|
258
|
+
static constexpr int kShouldThrowOnErrorIndex = 0;
|
259
|
+
static constexpr int kHolderIndex = 1;
|
260
|
+
static constexpr int kIsolateIndex = 2;
|
261
|
+
static constexpr int kReturnValueDefaultValueIndex = 3;
|
262
|
+
static constexpr int kReturnValueIndex = 4;
|
263
|
+
static constexpr int kDataIndex = 5;
|
264
|
+
static constexpr int kThisIndex = 6;
|
265
|
+
|
266
|
+
static constexpr int kArgsLength = 7;
|
267
|
+
|
268
|
+
static constexpr int kSize = 1 * internal::kApiSystemPointerSize;
|
269
|
+
|
270
|
+
V8_INLINE explicit PropertyCallbackInfo(internal::Address* args)
|
271
|
+
: args_(args) {}
|
248
272
|
internal::Address* args_;
|
249
273
|
};
|
250
274
|
|
@@ -285,7 +309,7 @@ void ReturnValue<T>::Set(const Local<S> handle) {
|
|
285
309
|
if (V8_UNLIKELY(handle.IsEmpty())) {
|
286
310
|
*value_ = GetDefaultValue();
|
287
311
|
} else {
|
288
|
-
*value_ =
|
312
|
+
*value_ = internal::ValueHelper::ValueAsAddress(*handle);
|
289
313
|
}
|
290
314
|
}
|
291
315
|
|
@@ -328,41 +352,46 @@ void ReturnValue<T>::Set(bool value) {
|
|
328
352
|
} else {
|
329
353
|
root_index = I::kFalseValueRootIndex;
|
330
354
|
}
|
331
|
-
*value_ =
|
355
|
+
*value_ = I::GetRoot(GetIsolate(), root_index);
|
332
356
|
}
|
333
357
|
|
334
358
|
template <typename T>
|
335
359
|
void ReturnValue<T>::SetNull() {
|
336
360
|
static_assert(std::is_base_of<T, Primitive>::value, "type check");
|
337
361
|
using I = internal::Internals;
|
338
|
-
*value_ =
|
362
|
+
*value_ = I::GetRoot(GetIsolate(), I::kNullValueRootIndex);
|
339
363
|
}
|
340
364
|
|
341
365
|
template <typename T>
|
342
366
|
void ReturnValue<T>::SetUndefined() {
|
343
367
|
static_assert(std::is_base_of<T, Primitive>::value, "type check");
|
344
368
|
using I = internal::Internals;
|
345
|
-
*value_ =
|
369
|
+
*value_ = I::GetRoot(GetIsolate(), I::kUndefinedValueRootIndex);
|
346
370
|
}
|
347
371
|
|
348
372
|
template <typename T>
|
349
373
|
void ReturnValue<T>::SetEmptyString() {
|
350
374
|
static_assert(std::is_base_of<T, String>::value, "type check");
|
351
375
|
using I = internal::Internals;
|
352
|
-
*value_ =
|
376
|
+
*value_ = I::GetRoot(GetIsolate(), I::kEmptyStringRootIndex);
|
353
377
|
}
|
354
378
|
|
355
379
|
template <typename T>
|
356
380
|
Isolate* ReturnValue<T>::GetIsolate() const {
|
357
381
|
// Isolate is always the pointer below the default value on the stack.
|
358
|
-
return *reinterpret_cast<Isolate**>(&value_[
|
382
|
+
return *reinterpret_cast<Isolate**>(&value_[kIsolateValueIndex]);
|
359
383
|
}
|
360
384
|
|
361
385
|
template <typename T>
|
362
386
|
Local<Value> ReturnValue<T>::Get() const {
|
363
387
|
using I = internal::Internals;
|
364
|
-
|
365
|
-
|
388
|
+
#if V8_STATIC_ROOTS_BOOL
|
389
|
+
if (I::is_identical(*value_, I::StaticReadOnlyRoot::kTheHoleValue)) {
|
390
|
+
#else
|
391
|
+
if (*value_ == I::GetRoot(GetIsolate(), I::kTheHoleValueRootIndex)) {
|
392
|
+
#endif
|
393
|
+
return Undefined(GetIsolate());
|
394
|
+
}
|
366
395
|
return Local<Value>::New(GetIsolate(), reinterpret_cast<Value*>(value_));
|
367
396
|
}
|
368
397
|
|
@@ -375,7 +404,7 @@ void ReturnValue<T>::Set(S* whatever) {
|
|
375
404
|
template <typename T>
|
376
405
|
internal::Address ReturnValue<T>::GetDefaultValue() {
|
377
406
|
// Default value is always the pointer below value_ on the stack.
|
378
|
-
return value_[
|
407
|
+
return value_[kDefaultValueValueIndex];
|
379
408
|
}
|
380
409
|
|
381
410
|
template <typename T>
|
@@ -387,31 +416,29 @@ FunctionCallbackInfo<T>::FunctionCallbackInfo(internal::Address* implicit_args,
|
|
387
416
|
template <typename T>
|
388
417
|
Local<Value> FunctionCallbackInfo<T>::operator[](int i) const {
|
389
418
|
// values_ points to the first argument (not the receiver).
|
390
|
-
if (i < 0 || length_ <= i) return
|
391
|
-
return Local<Value
|
419
|
+
if (i < 0 || length_ <= i) return Undefined(GetIsolate());
|
420
|
+
return Local<Value>::FromSlot(values_ + i);
|
392
421
|
}
|
393
422
|
|
394
423
|
template <typename T>
|
395
424
|
Local<Object> FunctionCallbackInfo<T>::This() const {
|
396
425
|
// values_ points to the first argument (not the receiver).
|
397
|
-
return Local<Object
|
426
|
+
return Local<Object>::FromSlot(values_ + kThisValuesIndex);
|
398
427
|
}
|
399
428
|
|
400
429
|
template <typename T>
|
401
430
|
Local<Object> FunctionCallbackInfo<T>::Holder() const {
|
402
|
-
return Local<Object
|
403
|
-
reinterpret_cast<Object*>(&implicit_args_[kHolderIndex]));
|
431
|
+
return Local<Object>::FromSlot(&implicit_args_[kHolderIndex]);
|
404
432
|
}
|
405
433
|
|
406
434
|
template <typename T>
|
407
435
|
Local<Value> FunctionCallbackInfo<T>::NewTarget() const {
|
408
|
-
return Local<Value
|
409
|
-
reinterpret_cast<Value*>(&implicit_args_[kNewTargetIndex]));
|
436
|
+
return Local<Value>::FromSlot(&implicit_args_[kNewTargetIndex]);
|
410
437
|
}
|
411
438
|
|
412
439
|
template <typename T>
|
413
440
|
Local<Value> FunctionCallbackInfo<T>::Data() const {
|
414
|
-
return Local<Value
|
441
|
+
return Local<Value>::FromSlot(&implicit_args_[kDataIndex]);
|
415
442
|
}
|
416
443
|
|
417
444
|
template <typename T>
|
@@ -441,17 +468,17 @@ Isolate* PropertyCallbackInfo<T>::GetIsolate() const {
|
|
441
468
|
|
442
469
|
template <typename T>
|
443
470
|
Local<Value> PropertyCallbackInfo<T>::Data() const {
|
444
|
-
return Local<Value
|
471
|
+
return Local<Value>::FromSlot(&args_[kDataIndex]);
|
445
472
|
}
|
446
473
|
|
447
474
|
template <typename T>
|
448
475
|
Local<Object> PropertyCallbackInfo<T>::This() const {
|
449
|
-
return Local<Object
|
476
|
+
return Local<Object>::FromSlot(&args_[kThisIndex]);
|
450
477
|
}
|
451
478
|
|
452
479
|
template <typename T>
|
453
480
|
Local<Object> PropertyCallbackInfo<T>::Holder() const {
|
454
|
-
return Local<Object
|
481
|
+
return Local<Object>::FromSlot(&args_[kHolderIndex]);
|
455
482
|
}
|
456
483
|
|
457
484
|
template <typename T>
|
@@ -32,19 +32,19 @@ namespace Debugger {
|
|
32
32
|
namespace API {
|
33
33
|
class SearchMatch;
|
34
34
|
}
|
35
|
-
}
|
35
|
+
} // namespace Debugger
|
36
36
|
namespace Runtime {
|
37
37
|
namespace API {
|
38
38
|
class RemoteObject;
|
39
39
|
class StackTrace;
|
40
40
|
class StackTraceId;
|
41
|
-
}
|
42
|
-
}
|
41
|
+
} // namespace API
|
42
|
+
} // namespace Runtime
|
43
43
|
namespace Schema {
|
44
44
|
namespace API {
|
45
45
|
class Domain;
|
46
46
|
}
|
47
|
-
}
|
47
|
+
} // namespace Schema
|
48
48
|
} // namespace protocol
|
49
49
|
|
50
50
|
class V8_EXPORT StringView {
|
@@ -134,6 +134,13 @@ class V8_EXPORT V8DebuggerId {
|
|
134
134
|
int64_t m_second = 0;
|
135
135
|
};
|
136
136
|
|
137
|
+
struct V8_EXPORT V8StackFrame {
|
138
|
+
StringView sourceURL;
|
139
|
+
StringView functionName;
|
140
|
+
int lineNumber;
|
141
|
+
int columnNumber;
|
142
|
+
};
|
143
|
+
|
137
144
|
class V8_EXPORT V8StackTrace {
|
138
145
|
public:
|
139
146
|
virtual StringView firstNonEmptySourceURL() const = 0;
|
@@ -151,6 +158,8 @@ class V8_EXPORT V8StackTrace {
|
|
151
158
|
|
152
159
|
// Safe to pass between threads, drops async chain.
|
153
160
|
virtual std::unique_ptr<V8StackTrace> clone() = 0;
|
161
|
+
|
162
|
+
virtual std::vector<V8StackFrame> frames() const = 0;
|
154
163
|
};
|
155
164
|
|
156
165
|
class V8_EXPORT V8InspectorSession {
|
@@ -203,6 +212,9 @@ class V8_EXPORT V8InspectorSession {
|
|
203
212
|
std::unique_ptr<StringBuffer>* objectGroup) = 0;
|
204
213
|
virtual void releaseObjectGroup(StringView) = 0;
|
205
214
|
virtual void triggerPreciseCoverageDeltaUpdate(StringView occasion) = 0;
|
215
|
+
|
216
|
+
// Prepare for shutdown (disables debugger pausing, etc.).
|
217
|
+
virtual void stop() = 0;
|
206
218
|
};
|
207
219
|
|
208
220
|
class V8_EXPORT WebDriverValue {
|
@@ -365,9 +377,12 @@ class V8_EXPORT V8Inspector {
|
|
365
377
|
virtual void flushProtocolNotifications() = 0;
|
366
378
|
};
|
367
379
|
enum ClientTrustLevel { kUntrusted, kFullyTrusted };
|
380
|
+
enum SessionPauseState { kWaitingForDebugger, kNotWaitingForDebugger };
|
381
|
+
// TODO(chromium:1352175): remove default value once downstream change lands.
|
368
382
|
virtual std::unique_ptr<V8InspectorSession> connect(
|
369
383
|
int contextGroupId, Channel*, StringView state,
|
370
|
-
ClientTrustLevel client_trust_level
|
384
|
+
ClientTrustLevel client_trust_level,
|
385
|
+
SessionPauseState = kNotWaitingForDebugger) {
|
371
386
|
return nullptr;
|
372
387
|
}
|
373
388
|
|