summaryrefslogtreecommitdiff
path: root/codegen/gbp.zig
diff options
context:
space:
mode:
Diffstat (limited to 'codegen/gbp.zig')
-rw-r--r--codegen/gbp.zig36
1 files changed, 26 insertions, 10 deletions
diff --git a/codegen/gbp.zig b/codegen/gbp.zig
index 1d06e9a..117847f 100644
--- a/codegen/gbp.zig
+++ b/codegen/gbp.zig
@@ -240,16 +240,32 @@ pub fn main() anyerror!void {
240 defer out_file.close(); 240 defer out_file.close();
241 var writer = out_file.writer(&write_buf); 241 var writer = out_file.writer(&write_buf);
242 242
243 const endian = builtin.cpu.arch.endian(); 243 try writer.interface.print(
244 try writer.interface.writeInt(u16, @intCast(stage1.items.len), endian); 244 \\//! This file is auto-generated. Do not edit.
245 for (stage1.items) |i| try writer.interface.writeInt(u16, i, endian); 245 \\
246 246 \\pub const s1: [{}]u16 = .{{
247 try writer.interface.writeInt(u16, @intCast(stage2.items.len), endian); 247 , .{stage1.items.len});
248 for (stage2.items) |i| try writer.interface.writeInt(u16, i, endian); 248 for (stage1.items) |entry| try writer.interface.print("{}, ", .{entry});
249 249
250 const props_bytes = stage3.keys(); 250 try writer.interface.print(
251 try writer.interface.writeInt(u16, @intCast(props_bytes.len), endian); 251 \\
252 try writer.interface.writeAll(props_bytes); 252 \\}};
253 \\
254 \\pub const s2: [{}]u7 = .{{
255 , .{stage2.items.len});
256 for (stage2.items) |entry| try writer.interface.print("{}, ", .{entry});
257
258 const keys = stage3.keys();
259
260 try writer.interface.print(
261 \\}};
262 \\
263 \\pub const s3: [{}]u8 = .{{
264 , .{keys.len});
265 for (keys) |entry| try writer.interface.print("{}, ", .{entry});
266 try writer.interface.writeAll(
267 \\};
268 );
253 269
254 try writer.interface.flush(); 270 try writer.interface.flush();
255} 271}