| 2639 | JS_BIND(context, exceptionTracker, runtimeObject, "stopTraceRecording", runtimeStopTraceRecording); |
| 2640 | JS_BIND( |
| 2641 | context, exceptionTracker, runtimeObject, "stopTraceRecordingWithStats", runtimeStopTraceRecordingWithStats); |
| 2642 | |
| 2643 | JS_BIND(context, exceptionTracker, runtimeObject, "scheduleWorkItem", runtimeScheduleWorkItem); |
| 2644 | JS_BIND(context, exceptionTracker, runtimeObject, "unscheduleWorkItem", runtimeUnscheduleWorkItem); |
| 2645 | |
| 2646 | JS_BIND(context, exceptionTracker, runtimeObject, "dumpMemoryStatistics", runtimeDumpMemoryStatistics); |
| 2647 | JS_BIND(context, exceptionTracker, runtimeObject, "performGC", runtimePerformGC); |
| 2648 | JS_BIND(context, exceptionTracker, runtimeObject, "newWeakRef", runtimeNewWeakRef); |
| 2649 | JS_BIND(context, exceptionTracker, runtimeObject, "derefWeakRef", runtimeDerefWeakRef); |
| 2650 | |
| 2651 | JS_BIND( |
| 2652 | context, exceptionTracker, runtimeObject, "setUncaughtExceptionHandler", runtimeSetUncaughtExceptionHandler); |
| 2653 | JS_BIND( |
| 2654 | context, exceptionTracker, runtimeObject, "setUnhandledRejectionHandler", runtimeSetUnhandledRejectionHandler); |
| 2655 | |
| 2656 | if constexpr (Valdi::shouldEnableJsHeapDump()) { |
| 2657 | JS_BIND(context, exceptionTracker, runtimeObject, "dumpHeap", runtimeHeapDump); |
| 2658 | } |
| 2659 | |
| 2660 | context.setObjectProperty(globalObject.get(), "runtime", runtimeObject.get(), exceptionTracker); |
| 2661 | if (!exceptionTracker) { |
| 2662 | return; |
| 2663 | } |
| 2664 | |
| 2665 | auto messagePortClass = JavaScriptMessagePort::makeClass(context, exceptionTracker); |
| 2666 | if (!exceptionTracker) { |
| 2667 | return; |
| 2668 | } |
| 2669 | context.setObjectProperty(globalObject.get(), "MessagePort", messagePortClass.get(), exceptionTracker); |
| 2670 | if (!exceptionTracker) { |
| 2671 | return; |
| 2672 | } |
| 2673 | auto messageChannelClass = JavaScriptMessageChannel::makeClass(context, exceptionTracker); |
| 2674 | if (!exceptionTracker) { |
| 2675 | return; |
| 2676 | } |
| 2677 | context.setObjectProperty(globalObject.get(), "MessageChannel", messageChannelClass.get(), exceptionTracker); |
| 2678 | if (!exceptionTracker) { |
| 2679 | return; |
| 2680 | } |
| 2681 | |
| 2682 | auto performanceObject = context.newObject(exceptionTracker); |
| 2683 | if (!exceptionTracker) { |
| 2684 | return; |
| 2685 | } |
| 2686 | JS_BIND(context, exceptionTracker, performanceObject, "now", performanceNow); |
| 2687 | |
| 2688 | auto timeOrigin = getPerformanceTimeOrigin(); |
| 2689 | context.setObjectProperty( |
| 2690 | performanceObject.get(), "timeOrigin", context.newNumber(timeOrigin.getTime()).get(), exceptionTracker); |
| 2691 | if (!exceptionTracker) { |
| 2692 | return; |
| 2693 | } |
| 2694 | |
| 2695 | context.setObjectProperty(globalObject.get(), "performance", performanceObject.get(), exceptionTracker); |
| 2696 | if (!exceptionTracker) { |
| 2697 | return; |
| 2698 | } |
nothing calls this directly
no test coverage detected