diff options
author | 2022-06-22 06:43:57 -0700 | |
---|---|---|
committer | 2022-06-22 06:56:47 -0700 | |
commit | 92aeb0af5594516d6444c9fcc69d56682e34771b (patch) | |
tree | 4ff007b8f345e1ccdf25839858bf104ada1cb5f0 /src/javascript/jsc/bindings/ZigGlobalObject.cpp | |
parent | 759bfadb933266de99c4bd7cf7c4c92b8dd97576 (diff) | |
download | bun-92aeb0af5594516d6444c9fcc69d56682e34771b.tar.gz bun-92aeb0af5594516d6444c9fcc69d56682e34771b.tar.zst bun-92aeb0af5594516d6444c9fcc69d56682e34771b.zip |
Add a way to schedule microtasks from C++
Diffstat (limited to 'src/javascript/jsc/bindings/ZigGlobalObject.cpp')
-rw-r--r-- | src/javascript/jsc/bindings/ZigGlobalObject.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/javascript/jsc/bindings/ZigGlobalObject.cpp b/src/javascript/jsc/bindings/ZigGlobalObject.cpp index 53872f325..e99f9a1cc 100644 --- a/src/javascript/jsc/bindings/ZigGlobalObject.cpp +++ b/src/javascript/jsc/bindings/ZigGlobalObject.cpp @@ -2107,6 +2107,17 @@ void GlobalObject::visitChildrenImpl(JSCell* cell, Visitor& visitor) visitor.addOpaqueRoot(context); } +extern "C" void Bun__queueMicrotask(JSC__JSGlobalObject*, WebCore::EventLoopTask* task); +extern "C" void Bun__performTask(Zig::GlobalObject* globalObject, WebCore::EventLoopTask* task) +{ + task->performTask(*globalObject->scriptExecutionContext()); +} + +void GlobalObject::queueTask(WebCore::EventLoopTask* task) +{ + Bun__queueMicrotask(this, task); +} + DEFINE_VISIT_CHILDREN(GlobalObject); // void GlobalObject::destroy(JSCell* cell) |