MCPcopy Create free account
hub / github.com/Snapchat/Valdi / onModuleLoaded

Method onModuleLoaded

valdi/src/valdi/runtime/JavaScript/JavaScriptRuntime.cpp:2641–2695  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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 }

Callers

nothing calls this directly

Calls 14

toRetainedResultMethod · 0.80
toResultMethod · 0.80
setJsContextHandlerMethod · 0.80
withObjectMethod · 0.80
extractErrorMethod · 0.80
JSValueClass · 0.70
errorMethod · 0.65
getMethod · 0.65
valueMethod · 0.65
getObjectPropertyMethod · 0.45
callObjectAsFunctionMethod · 0.45

Tested by

no test coverage detected