diff options
Diffstat (limited to 'src/javascript/jsc/webcore.zig')
-rw-r--r-- | src/javascript/jsc/webcore.zig | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/src/javascript/jsc/webcore.zig b/src/javascript/jsc/webcore.zig deleted file mode 100644 index 799b408f2..000000000 --- a/src/javascript/jsc/webcore.zig +++ /dev/null @@ -1,130 +0,0 @@ -pub usingnamespace @import("./webcore/response.zig"); -pub usingnamespace @import("./webcore/encoding.zig"); -pub usingnamespace @import("./webcore/streams.zig"); - -const JSC = @import("../../jsc.zig"); -const std = @import("std"); - -pub const Lifetime = enum { - clone, - transfer, - share, - /// When reading from a fifo like STDIN/STDERR - temporary, -}; - -pub const Crypto = struct { - const UUID = @import("./uuid.zig"); - - pub const Class = JSC.NewClass(void, .{ .name = "crypto" }, .{ - .getRandomValues = .{ - .rfn = getRandomValues, - }, - .randomUUID = .{ - .rfn = randomUUID, - }, - }, .{}); - pub const Prototype = JSC.NewClass( - void, - .{ .name = "Crypto" }, - .{ - .call = .{ - .rfn = call, - }, - }, - .{}, - ); - - pub fn getRandomValues( - // this - _: void, - ctx: JSC.C.JSContextRef, - // function - _: JSC.C.JSObjectRef, - // thisObject - _: JSC.C.JSObjectRef, - arguments: []const JSC.C.JSValueRef, - exception: JSC.C.ExceptionRef, - ) JSC.C.JSValueRef { - if (arguments.len == 0) { - JSC.JSError(JSC.getAllocator(ctx), "Expected typed array but received nothing", .{}, ctx, exception); - return JSC.JSValue.jsUndefined().asObjectRef(); - } - var array_buffer = JSC.MarkedArrayBuffer.fromJS(ctx.ptr(), JSC.JSValue.fromRef(arguments[0]), exception) orelse { - JSC.JSError(JSC.getAllocator(ctx), "Expected typed array", .{}, ctx, exception); - return JSC.JSValue.jsUndefined().asObjectRef(); - }; - var slice = array_buffer.slice(); - if (slice.len > 0) - std.crypto.random.bytes(slice); - - return arguments[0]; - } - - pub fn call( - // this - _: void, - _: JSC.C.JSContextRef, - // function - _: JSC.C.JSObjectRef, - // thisObject - _: JSC.C.JSObjectRef, - _: []const JSC.C.JSValueRef, - _: JSC.C.ExceptionRef, - ) JSC.C.JSValueRef { - return JSC.JSValue.jsUndefined().asObjectRef(); - } - - pub fn randomUUID( - // this - _: void, - ctx: JSC.C.JSContextRef, - // function - _: JSC.C.JSObjectRef, - // thisObject - _: JSC.C.JSObjectRef, - _: []const JSC.C.JSValueRef, - _: JSC.C.ExceptionRef, - ) JSC.C.JSValueRef { - var uuid = UUID.init(); - var out: [128]u8 = undefined; - var str = std.fmt.bufPrint(&out, "{s}", .{uuid}) catch unreachable; - return JSC.ZigString.init(str).toValueGC(ctx.ptr()).asObjectRef(); - } -}; - -pub const Performance = struct { - pub const Class = JSC.NewClass( - void, - .{ - .name = "performance", - .read_only = true, - }, - .{ - .now = .{ - .rfn = Performance.now, - }, - }, - .{}, - ); - - pub fn now( - _: void, - ctx: JSC.C.JSContextRef, - _: JSC.C.JSObjectRef, - _: JSC.C.JSObjectRef, - _: []const JSC.C.JSValueRef, - _: JSC.C.ExceptionRef, - ) JSC.C.JSValueRef { - return JSC.C.JSValueMakeNumber( - ctx, - @floatCast( - f64, - @intToFloat( - f128, - JSC.VirtualMachine.vm.origin_timer.read(), - ) / std.time.ns_per_ms, - ), - ); - } -}; |