diff options
author | 2022-05-04 19:27:53 -0700 | |
---|---|---|
committer | 2022-05-05 21:35:08 -0700 | |
commit | b4fc584d1879f48606def40e4d7e0b74f9b66a4c (patch) | |
tree | 6f424c08434bf70d457dcc9e5c7607b17b8069bd /src/javascript | |
parent | 5b2d9f81288ed1601c97d70bb86d14cbb445d8c4 (diff) | |
download | bun-b4fc584d1879f48606def40e4d7e0b74f9b66a4c.tar.gz bun-b4fc584d1879f48606def40e4d7e0b74f9b66a4c.tar.zst bun-b4fc584d1879f48606def40e4d7e0b74f9b66a4c.zip |
Even More NAPI
Diffstat (limited to 'src/javascript')
-rw-r--r-- | src/javascript/jsc/bindings/bindings.zig | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/javascript/jsc/bindings/bindings.zig b/src/javascript/jsc/bindings/bindings.zig index 0738fe4bf..d9fa00913 100644 --- a/src/javascript/jsc/bindings/bindings.zig +++ b/src/javascript/jsc/bindings/bindings.zig @@ -2207,6 +2207,26 @@ pub const JSValue = enum(u64) { else => false, }; } + + pub inline fn isIndexable(this: JSType) bool { + return switch (this) { + .Object, + .FinalObject, + .Int8Array, + .Int16Array, + .Int32Array, + .Uint8Array, + .Uint8ClampedArray, + .Uint16Array, + .Uint32Array, + .Float32Array, + .Float64Array, + .Array, + .DerivedArray, + => true, + else => false, + }; + } }; pub inline fn cast(ptr: anytype) JSValue { @@ -2241,7 +2261,6 @@ pub const JSValue = enum(u64) { u52 => @truncate(u52, this.to(u64)), u64 => @intCast(u64, @maximum(toInt64(this), 0)), - f64 => asNUmber(this), u8 => @truncate(u8, toU32(this)), i16 => @truncate(i16, toInt32(this)), |