aboutsummaryrefslogtreecommitdiff
path: root/src/api/schema.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/schema.zig')
-rw-r--r--src/api/schema.zig21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/api/schema.zig b/src/api/schema.zig
index 106815345..94c5bb643 100644
--- a/src/api/schema.zig
+++ b/src/api/schema.zig
@@ -206,13 +206,16 @@ pub fn Writer(comptime WritableStream: type) type {
pub fn writeValue(this: *Self, slice: anytype) !void {
switch (@TypeOf(slice)) {
- []u8,
+ []u8, []const u8 => {
+ try this.writeArray(u8, slice);
+ },
+
[]u16,
[]u32,
[]i16,
[]i32,
[]i8,
- []const u8,
+
[]const u16,
[]const u32,
[]const i16,
@@ -276,7 +279,7 @@ pub fn Writer(comptime WritableStream: type) type {
};
}
-pub const ByteWriter = Writer(std.io.FixedBufferStream([]u8));
+pub const ByteWriter = Writer(*std.io.FixedBufferStream([]u8));
pub const FileWriter = Writer(std.fs.File);
pub const Api = struct {
@@ -1413,8 +1416,8 @@ pub const Api = struct {
/// log
log: Log,
- /// bytes
- bytes: []const u8,
+ /// blob_length
+ blob_length: u32 = 0,
pub fn decode(reader: anytype) anyerror!WebsocketMessageBuildSuccess {
var this = std.mem.zeroes(WebsocketMessageBuildSuccess);
@@ -1424,7 +1427,7 @@ pub const Api = struct {
this.loader = try reader.readValue(Loader);
this.module_path = try reader.readValue([]const u8);
this.log = try reader.readValue(Log);
- this.bytes = try reader.readArray(u8);
+ this.blob_length = try reader.readValue(u32);
return this;
}
@@ -1432,9 +1435,9 @@ pub const Api = struct {
try writer.writeInt(this.id);
try writer.writeInt(this.from_timestamp);
try writer.writeEnum(this.loader);
- try writer.writeValue(this.module_path);
+ try writer.writeArray(u8, this.module_path);
try writer.writeValue(this.log);
- try writer.writeArray(u8, this.bytes);
+ try writer.writeInt(this.blob_length);
}
};
@@ -1469,7 +1472,7 @@ pub const Api = struct {
try writer.writeInt(this.id);
try writer.writeInt(this.from_timestamp);
try writer.writeEnum(this.loader);
- try writer.writeValue(this.module_path);
+ try writer.writeArray(u8, this.module_path);
try writer.writeValue(this.log);
}
};