diff options
Diffstat (limited to 'src/bun.js/bindings/Debugger.zig')
-rw-r--r-- | src/bun.js/bindings/Debugger.zig | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/bun.js/bindings/Debugger.zig b/src/bun.js/bindings/Debugger.zig new file mode 100644 index 000000000..3d9fc450c --- /dev/null +++ b/src/bun.js/bindings/Debugger.zig @@ -0,0 +1,33 @@ +const bun = @import("root").bun; +const JSC = bun.JSC; + +pub const Debugger = struct { + pub const AsyncCallType = enum(u8) { + DOMTimer = 1, + EventListener = 2, + PostMessage = 3, + RequestAnimationFrame = 4, + Microtask = 5, + }; + extern fn Debugger__didScheduleAsyncCall(*JSC.JSGlobalObject, AsyncCallType, u64, bool) void; + extern fn Debugger__didCancelAsyncCall(*JSC.JSGlobalObject, AsyncCallType, u64) void; + extern fn Debugger__didDispatchAsyncCall(*JSC.JSGlobalObject, AsyncCallType, u64) void; + extern fn Debugger__willDispatchAsyncCall(*JSC.JSGlobalObject, AsyncCallType, u64) void; + + pub fn didScheduleAsyncCall(globalObject: *JSC.JSGlobalObject, call: AsyncCallType, id: u64, single_shot: bool) void { + JSC.markBinding(@src()); + Debugger__didScheduleAsyncCall(globalObject, call, id, single_shot); + } + pub fn didCancelAsyncCall(globalObject: *JSC.JSGlobalObject, call: AsyncCallType, id: u64) void { + JSC.markBinding(@src()); + Debugger__didCancelAsyncCall(globalObject, call, id); + } + pub fn didDispatchAsyncCall(globalObject: *JSC.JSGlobalObject, call: AsyncCallType, id: u64) void { + JSC.markBinding(@src()); + Debugger__didDispatchAsyncCall(globalObject, call, id); + } + pub fn willDispatchAsyncCall(globalObject: *JSC.JSGlobalObject, call: AsyncCallType, id: u64) void { + JSC.markBinding(@src()); + Debugger__willDispatchAsyncCall(globalObject, call, id); + } +}; |