aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/api/bun.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/bun.js/api/bun.zig')
-rw-r--r--src/bun.js/api/bun.zig35
1 files changed, 24 insertions, 11 deletions
diff --git a/src/bun.js/api/bun.zig b/src/bun.js/api/bun.zig
index 8408ce339..ac5366a45 100644
--- a/src/bun.js/api/bun.zig
+++ b/src/bun.js/api/bun.zig
@@ -231,7 +231,7 @@ pub fn registerMacro(
return js.JSValueMakeUndefined(ctx);
}
- if (!js.JSValueIsObject(ctx, arguments[1]) or !js.JSObjectIsFunction(ctx, arguments[1])) {
+ if (!arguments[1].?.value().isCell() or !arguments[1].?.value().isCallable(ctx.vm())) {
JSError(getAllocator(ctx), "Macro must be a function. Received: {s}", .{@tagName(js.JSValueGetType(ctx, arguments[1]))}, ctx, exception);
return js.JSValueMakeUndefined(ctx);
}
@@ -1283,20 +1283,33 @@ pub const Crypto = struct {
},
);
- pub const Class = JSC.NewClass(
+ pub const codgen = JSC.codegen(
@This(),
+ @as(string, name),
.{
- .name = name,
+ .update = JSC.wrapSync(@This(), "update"),
+ .digest = JSC.wrapSync(@This(), "digest"),
+ .finalize = finalize,
+
+ .byteLength = .{
+ .get = byteLength2,
+ },
},
.{
- .update = .{
- .rfn = JSC.wrapSync(@This(), "update"),
- },
- .digest = .{
- .rfn = JSC.wrapSync(@This(), "digest"),
+ .constructor = constructor,
+ .hash = JSC.wrapWithHasContainer(@This(), "hash", false, false, true),
+ .byteLength = .{
+ .get = byteLength,
},
- .finalize = finalize,
},
+ );
+
+ pub const Class = JSC.NewClass(
+ @This(),
+ .{
+ .name = name,
+ },
+ .{},
.{
.byteLength = .{
.get = byteLength2,
@@ -1620,12 +1633,12 @@ pub export fn Bun__escapeHTML(
globalObject: *JSGlobalObject,
callframe: *JSC.CallFrame,
) JSC.JSValue {
- const arguments = callframe.arguments();
+ const arguments = callframe.arguments(2);
if (arguments.len < 1) {
return ZigString.Empty.toValue(globalObject);
}
- const input_value = arguments[0];
+ const input_value = arguments.ptr[0];
const zig_str = input_value.getZigString(globalObject);
if (zig_str.len == 0)
return ZigString.Empty.toValue(globalObject);