diff options
Diffstat (limited to 'src/javascript/jsc/node/buffer.zig')
-rw-r--r-- | src/javascript/jsc/node/buffer.zig | 611 |
1 files changed, 87 insertions, 524 deletions
diff --git a/src/javascript/jsc/node/buffer.zig b/src/javascript/jsc/node/buffer.zig index 0d2c9932f..a275e8a0d 100644 --- a/src/javascript/jsc/node/buffer.zig +++ b/src/javascript/jsc/node/buffer.zig @@ -9,545 +9,108 @@ const Environment = bun.Environment; const C = bun.C; const Syscall = @import("./syscall.zig"); const os = std.os; -const Buffer = JSC.ArrayBuffer; const JSGlobalObject = JSC.JSGlobalObject; const ArgumentsSlice = JSC.Node.ArgumentsSlice; -const BufferStaticFunctionEnum = JSC.Node.DeclEnum(BufferStatic); - -fn BufferStatic_wrap(comptime FunctionEnum: BufferStaticFunctionEnum) NodeFSFunction { - const Function = @field(BufferStatic, @tagName(BufferStaticFunctionEnum)); - const FunctionType = @TypeOf(Function); - - const function: std.builtin.TypeInfo.Fn = comptime @typeInfo(FunctionType).Fn; - comptime if (function.args.len != 3) @compileError("Expected 3 arguments"); - const Arguments = comptime function.args[1].arg_type.?; - const FormattedName = comptime [1]u8{std.ascii.toUpper(@tagName(BufferStaticFunctionEnum)[0])} ++ @tagName(BufferStaticFunctionEnum)[1..]; - const Result = JSC.JSValue; - - const NodeBindingClosure = struct { - pub fn bind( - _: void, - ctx: JSC.C.JSContextRef, - _: JSC.C.JSObjectRef, - _: JSC.C.JSObjectRef, - arguments: []const JSC.C.JSValueRef, - exception: JSC.C.ExceptionRef, - ) JSC.C.JSValueRef { - var slice = ArgumentsSlice.init(@ptrCast([*]const JSC.JSValue, arguments.ptr)[0..arguments.len]); - - defer { - // TODO: fix this - for (arguments) |arg| { - JSC.C.JSValueUnprotect(ctx, arg); - } - slice.arena.deinit(); - } - - const args = if (comptime Arguments != void) - (Arguments.fromJS(ctx, &slice, exception) orelse return null) - else - Arguments{}; - if (exception.* != null) return null; - - const result: Result = Function( - ctx.ptr(), - args, - exception, - ); - if (exception.* != null) { - return null; - } - - return result.asObjectRef(); - } - }; - - return NodeBindingClosure.bind; -} - -pub const BufferStatic = struct { - pub const Arguments = struct { - pub const Alloc = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Alloc {} - }; - pub const AllocUnsafe = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?AllocUnsafe {} - }; - pub const AllocUnsafeSlow = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?AllocUnsafeSlow {} - }; - pub const Compare = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Compare {} - }; - pub const Concat = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Concat {} - }; - pub const IsEncoding = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?IsEncoding {} - }; - }; - pub fn alloc(globalThis: *JSGlobalObject, args: Arguments.Alloc, exception: JSC.C.ExceptionRef) JSC.JSValue {} - pub fn allocUnsafe(globalThis: *JSGlobalObject, args: Arguments.AllocUnsafe, exception: JSC.C.ExceptionRef) JSC.JSValue {} - pub fn allocUnsafeSlow(globalThis: *JSGlobalObject, args: Arguments.AllocUnsafeSlow, exception: JSC.C.ExceptionRef) JSC.JSValue {} - pub fn compare(globalThis: *JSGlobalObject, args: Arguments.Compare, exception: JSC.C.ExceptionRef) JSC.JSValue {} - pub fn concat(globalThis: *JSGlobalObject, args: Arguments.Concat, exception: JSC.C.ExceptionRef) JSC.JSValue {} - pub fn isEncoding(globalThis: *JSGlobalObject, args: Arguments.IsEncoding, exception: JSC.C.ExceptionRef) JSC.JSValue {} - - pub const Class = JSC.NewClass( - void, - .{ .name = "Buffer" }, - .{ - .alloc = .{ .name = "alloc", .rfn = BufferStatic_wrap(.alloc) }, - .allocUnsafe = .{ .name = "allocUnsafe", .rfn = BufferStatic_wrap(.allocUnsafe) }, - .allocUnsafeSlow = .{ .name = "allocUnsafeSlow", .rfn = BufferStatic_wrap(.allocUnsafeSlow) }, - .compare = .{ .name = "compare", .rfn = BufferStatic_wrap(.compare) }, - .concat = .{ .name = "concat", .rfn = BufferStatic_wrap(.concat) }, - .isEncoding = .{ .name = "isEncoding", .rfn = BufferStatic_wrap(.isEncoding) }, - }, - .{ ._poolSize = .{ .name = "_poolSize", .get = .{ .name = "get", .rfn = BufferStatic.getPoolSize }, .set = .{ .name = "set", .rfn = BufferStatic.setPoolSize } } }, - ); -}; - -pub const BufferPrototype = struct { - const Arguments = struct { - pub const Compare = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Compare { - return null; - } - }; - pub const Copy = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Copy { - return null; - } - }; - pub const Equals = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Equals { - return null; - } - }; - pub const Fill = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Fill { - return null; - } - }; - pub const Includes = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Includes { - return null; - } - }; - pub const IndexOf = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?IndexOf { - return null; - } - }; - pub const LastIndexOf = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?LastIndexOf { - return null; - } - }; - pub const Swap16 = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Swap16 { - return null; - } - }; - pub const Swap32 = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Swap32 { - return null; - } - }; - pub const Swap64 = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Swap64 { - return null; - } - }; - pub const Write = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Write { - return null; - } - }; - pub const Read = struct { - pub fn fromJS(ctx: JSC.C.JSContextRef, arguments: *ArgumentsSlice, exception: JSC.C.ExceptionRef) ?Read { - return null; - } - }; - - pub fn WriteInt(comptime kind: Int) type { - return struct { - const This = @This(); - const Value = Int.native.get(kind); - }; - } - pub fn ReadInt(comptime kind: Int) type { - return struct { - const This = @This(); - const Value = Int.native.get(kind); - }; - } - }; - pub fn compare(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Compare) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); +/// These functions are called in JSBuffer.cpp +/// `CALL_WRITE_FN` is the macro which ultimately calls it +pub const Write = struct { + pub export fn Bun__Buffer__write__BigInt64BE(input: [*]u8, value: i64) void { + std.mem.writeIntBig(i64, input[0..8], value); } - pub fn copy(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Copy) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__BigInt64LE(input: [*]u8, value: i64) void { + std.mem.writeIntLittle(i64, input[0..8], value); } - pub fn equals(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Equals) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__BigUInt64BE(input: [*]u8, value: u64) void { + std.mem.writeIntBig(u64, input[0..8], value); } - pub fn fill(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Fill) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__BigUInt64LE(input: [*]u8, value: u64) void { + std.mem.writeIntLittle(u64, input[0..8], value); } - pub fn includes(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Includes) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__DoubleBE(input: [*]u8, value: f64) void { + std.mem.writeIntBig(u64, input[0..8], @bitCast(u64, value)); } - pub fn indexOf(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.IndexOf) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__DoubleLE(input: [*]u8, value: f64) void { + std.mem.writeIntLittle(u64, input[0..8], @bitCast(u64, value)); } - pub fn lastIndexOf(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.LastIndexOf) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__FloatBE(input: [*]u8, value: f64) void { + std.mem.writeIntBig(i32, input[0..4], @bitCast(i32, @floatCast(f32, value))); } - pub fn swap16(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Swap16) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__FloatLE(input: [*]u8, value: f64) void { + std.mem.writeIntLittle(i32, input[0..4], @bitCast(i32, @floatCast(f32, value))); } - pub fn swap32(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Swap32) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__Int16BE(input: [*]u8, value: i32) void { + std.mem.writeIntBig(i16, input[0..2], @intCast(i16, value)); } - pub fn swap64(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Swap64) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__Int16LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(i16, input[0..2], @intCast(i16, value)); } - pub fn write(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Write) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__Int32BE(input: [*]u8, value: i32) void { + std.mem.writeIntBig(i32, input[0..4], value); } - pub fn read(this: *Buffer, globalThis: *JSC.JSGlobalObject, args: Arguments.Read) JSC.JSValue { - _ = this; - _ = globalThis; - _ = args; - return JSC.JSValue.jsUndefined(); + pub export fn Bun__Buffer__write__Int32LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(i32, input[0..4], value); + } + pub export fn Bun__Buffer__write__Int64LE(input: [*]u8, value: i64) void { + std.mem.writeIntLittle(i64, input[0..8], value); + } + pub export fn Bun__Buffer__write__Int8(input: [*]u8, value: i32) void { + std.mem.writeIntNative(i8, input[0..1], @truncate(i8, value)); + } + pub export fn Bun__Buffer__write__Int8LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(i8, input[0..1], @truncate(i8, value)); + } + pub export fn Bun__Buffer__write__UInt16BE(input: [*]u8, value: i32) void { + std.mem.writeIntBig(u16, input[0..2], @truncate(u16, @bitCast(u32, value))); + } + pub export fn Bun__Buffer__write__UInt16LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(u16, input[0..2], @truncate(u16, @bitCast(u32, value))); + } + pub export fn Bun__Buffer__write__UInt32BE(input: [*]u8, value: i32) void { + std.mem.writeIntBig(u32, input[0..4], @bitCast(u32, value)); + } + pub export fn Bun__Buffer__write__UInt32LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(u32, input[0..4], @bitCast(u32, value)); + } + pub export fn Bun__Buffer__write__UInt64BE(input: [*]u8, value: u64) void { + std.mem.writeIntBig(u64, input[0..8], value); + } + pub export fn Bun__Buffer__write__UInt64LE(input: [*]u8, value: u64) void { + std.mem.writeIntLittle(u64, input[0..8], value); + } + pub export fn Bun__Buffer__write__UInt8BE(input: [*]u8, value: i32) void { + std.mem.writeIntBig(u8, input[0..1], @bitCast(u8, @truncate(i8, value))); + } + pub export fn Bun__Buffer__write__UInt8LE(input: [*]u8, value: i32) void { + std.mem.writeIntLittle(u8, input[0..1], @bitCast(u8, @truncate(i8, value))); } - - fn writeIntAny(this: *Buffer, comptime kind: Int, args: Arguments.WriteInt(kind)) JSC.JSValue {} - fn readIntAny(this: *Buffer, comptime kind: Int, args: Arguments.ReadInt(kind)) JSC.JSValue {} - - pub const Class = JSC.NewClass( - void, - .{ .name = "Buffer" }, - .{ - .compare = .{ - .name = "compare", - .rfn = wrap(BufferPrototype.compare), - }, - .copy = .{ - .name = "copy", - .rfn = wrap(BufferPrototype.copy), - }, - .equals = .{ - .name = "equals", - .rfn = wrap(BufferPrototype.equals), - }, - .fill = .{ - .name = "fill", - .rfn = wrap(BufferPrototype.fill), - }, - .includes = .{ - .name = "includes", - .rfn = wrap(BufferPrototype.includes), - }, - .indexOf = .{ - .name = "indexOf", - .rfn = wrap(BufferPrototype.indexOf), - }, - .lastIndexOf = .{ - .name = "lastIndexOf", - .rfn = wrap(BufferPrototype.lastIndexOf), - }, - .swap16 = .{ - .name = "swap16", - .rfn = wrap(BufferPrototype.swap16), - }, - .swap32 = .{ - .name = "swap32", - .rfn = wrap(BufferPrototype.swap32), - }, - .swap64 = .{ - .name = "swap64", - .rfn = wrap(BufferPrototype.swap64), - }, - .write = .{ - .name = "write", - .rfn = wrap(BufferPrototype.write), - }, - .read = .{ - .name = "read", - .rfn = wrap(BufferPrototype.read), - }, - - // -- Write -- - .writeBigInt64BE = .{ - .name = "writeBigInt64BE", - .rfn = writeWrap(Int.BigInt64BE), - }, - .writeBigInt64LE = .{ - .name = "writeBigInt64LE", - .rfn = writeWrap(Int.BigInt64LE), - }, - .writeBigUInt64BE = .{ - .name = "writeBigUInt64BE", - .rfn = writeWrap(Int.BigUInt64BE), - }, - .writeBigUInt64LE = .{ - .name = "writeBigUInt64LE", - .rfn = writeWrap(Int.BigUInt64LE), - }, - .writeDoubleBE = .{ - .name = "writeDoubleBE", - .rfn = writeWrap(Int.DoubleBE), - }, - .writeDoubleLE = .{ - .name = "writeDoubleLE", - .rfn = writeWrap(Int.DoubleLE), - }, - .writeFloatBE = .{ - .name = "writeFloatBE", - .rfn = writeWrap(Int.FloatBE), - }, - .writeFloatLE = .{ - .name = "writeFloatLE", - .rfn = writeWrap(Int.FloatLE), - }, - .writeInt8 = .{ - .name = "writeInt8", - .rfn = writeWrap(Int.Int8), - }, - .writeInt16BE = .{ - .name = "writeInt16BE", - .rfn = writeWrap(Int.Int16BE), - }, - .writeInt16LE = .{ - .name = "writeInt16LE", - .rfn = writeWrap(Int.Int16LE), - }, - .writeInt32BE = .{ - .name = "writeInt32BE", - .rfn = writeWrap(Int.Int32BE), - }, - .writeInt32LE = .{ - .name = "writeInt32LE", - .rfn = writeWrap(Int.Int32LE), - }, - .writeIntBE = .{ - .name = "writeIntBE", - .rfn = writeWrap(Int.IntBE), - }, - .writeIntLE = .{ - .name = "writeIntLE", - .rfn = writeWrap(Int.IntLE), - }, - .writeUInt8 = .{ - .name = "writeUInt8", - .rfn = writeWrap(Int.UInt8), - }, - .writeUInt16BE = .{ - .name = "writeUInt16BE", - .rfn = writeWrap(Int.UInt16BE), - }, - .writeUInt16LE = .{ - .name = "writeUInt16LE", - .rfn = writeWrap(Int.UInt16LE), - }, - .writeUInt32BE = .{ - .name = "writeUInt32BE", - .rfn = writeWrap(Int.UInt32BE), - }, - .writeUInt32LE = .{ - .name = "writeUInt32LE", - .rfn = writeWrap(Int.UInt32LE), - }, - .writeUIntBE = .{ - .name = "writeUIntBE", - .rfn = writeWrap(Int.UIntBE), - }, - .writeUIntLE = .{ - .name = "writeUIntLE", - .rfn = writeWrap(Int.UIntLE), - }, - - // -- Read -- - .readBigInt64BE = .{ - .name = "readBigInt64BE", - .rfn = readWrap(Int.BigInt64BE), - }, - .readBigInt64LE = .{ - .name = "readBigInt64LE", - .rfn = readWrap(Int.BigInt64LE), - }, - .readBigUInt64BE = .{ - .name = "readBigUInt64BE", - .rfn = readWrap(Int.BigUInt64BE), - }, - .readBigUInt64LE = .{ - .name = "readBigUInt64LE", - .rfn = readWrap(Int.BigUInt64LE), - }, - .readDoubleBE = .{ - .name = "readDoubleBE", - .rfn = readWrap(Int.DoubleBE), - }, - .readDoubleLE = .{ - .name = "readDoubleLE", - .rfn = readWrap(Int.DoubleLE), - }, - .readFloatBE = .{ - .name = "readFloatBE", - .rfn = readWrap(Int.FloatBE), - }, - .readFloatLE = .{ - .name = "readFloatLE", - .rfn = readWrap(Int.FloatLE), - }, - .readInt8 = .{ - .name = "readInt8", - .rfn = readWrap(Int.Int8), - }, - .readInt16BE = .{ - .name = "readInt16BE", - .rfn = readWrap(Int.Int16BE), - }, - .readInt16LE = .{ - .name = "readInt16LE", - .rfn = readWrap(Int.Int16LE), - }, - .readInt32BE = .{ - .name = "readInt32BE", - .rfn = readWrap(Int.Int32BE), - }, - .readInt32LE = .{ - .name = "readInt32LE", - .rfn = readWrap(Int.Int32LE), - }, - .readIntBE = .{ - .name = "readIntBE", - .rfn = readWrap(Int.IntBE), - }, - .readIntLE = .{ - .name = "readIntLE", - .rfn = readWrap(Int.IntLE), - }, - .readUInt8 = .{ - .name = "readUInt8", - .rfn = readWrap(Int.UInt8), - }, - .readUInt16BE = .{ - .name = "readUInt16BE", - .rfn = readWrap(Int.UInt16BE), - }, - .readUInt16LE = .{ - .name = "readUInt16LE", - .rfn = readWrap(Int.UInt16LE), - }, - .readUInt32BE = .{ - .name = "readUInt32BE", - .rfn = readWrap(Int.UInt32BE), - }, - .readUInt32LE = .{ - .name = "readUInt32LE", - .rfn = readWrap(Int.UInt32LE), - }, - .readUIntBE = .{ - .name = "readUIntBE", - .rfn = readWrap(Int.UIntBE), - }, - .readUIntLE = .{ - .name = "readUIntLE", - .rfn = readWrap(Int.UIntLE), - }, - }, - .{}, - ); }; -const Int = enum { - BigInt64BE, - BigInt64LE, - BigUInt64BE, - BigUInt64LE, - DoubleBE, - DoubleLE, - FloatBE, - FloatLE, - Int8, - Int16BE, - Int16LE, - Int32BE, - Int32LE, - IntBE, - IntLE, - UInt8, - UInt16BE, - UInt16LE, - UInt32BE, - UInt32LE, - UIntBE, - UIntLE, - - const NativeMap = std.EnumArray(Int, type); - pub const native: NativeMap = brk: { - var map = NativeMap.initUndefined(); - map.set(.BigInt64BE, i64); - map.set(.BigInt64LE, i64); - map.set(.BigUInt64BE, u64); - map.set(.BigUInt64LE, u64); - map.set(.DoubleBE, f64); - map.set(.DoubleLE, f64); - map.set(.FloatBE, f32); - map.set(.FloatLE, f32); - map.set(.Int8, i8); - map.set(.Int16BE, i16); - map.set(.Int16LE, i16); - map.set(.Int32BE, u32); - map.set(.Int32LE, u32); - map.set(.IntBE, i32); - map.set(.IntLE, i32); - map.set(.UInt8, u8); - map.set(.UInt16BE, u16); - map.set(.UInt16LE, u16); - map.set(.UInt32BE, u32); - map.set(.UInt32LE, u32); - map.set(.UIntBE, u32); - map.set(.UIntLE, u32); - break :brk map; - }; -}; +comptime { + if (!JSC.is_bindgen) { + _ = Write.Bun__Buffer__write__BigInt64BE; + _ = Write.Bun__Buffer__write__BigInt64LE; + _ = Write.Bun__Buffer__write__BigUInt64BE; + _ = Write.Bun__Buffer__write__BigUInt64LE; + _ = Write.Bun__Buffer__write__DoubleBE; + _ = Write.Bun__Buffer__write__DoubleLE; + _ = Write.Bun__Buffer__write__FloatBE; + _ = Write.Bun__Buffer__write__FloatLE; + _ = Write.Bun__Buffer__write__Int16BE; + _ = Write.Bun__Buffer__write__Int16LE; + _ = Write.Bun__Buffer__write__Int32BE; + _ = Write.Bun__Buffer__write__Int32LE; + _ = Write.Bun__Buffer__write__Int64LE; + _ = Write.Bun__Buffer__write__Int8; + _ = Write.Bun__Buffer__write__Int8LE; + _ = Write.Bun__Buffer__write__UInt16BE; + _ = Write.Bun__Buffer__write__UInt16LE; + _ = Write.Bun__Buffer__write__UInt32BE; + _ = Write.Bun__Buffer__write__UInt32LE; + _ = Write.Bun__Buffer__write__UInt64BE; + _ = Write.Bun__Buffer__write__UInt64LE; + _ = Write.Bun__Buffer__write__UInt8BE; + _ = Write.Bun__Buffer__write__UInt8LE; + } +} |