summaryrefslogtreecommitdiff
path: root/codegen/ccc.zig
diff options
context:
space:
mode:
authorGravatar Sam Atman2026-02-04 18:01:36 -0500
committerGravatar Sam Atman2026-02-04 18:01:36 -0500
commitba5d9081b479e95ffa7f3baf751beedd370cec14 (patch)
treec12041d8aab9f9ff68b25a2e2c9042073c3d5f61 /codegen/ccc.zig
parentConvert Words module to no-allocation (diff)
downloadzg-ba5d9081b479e95ffa7f3baf751beedd370cec14.tar.gz
zg-ba5d9081b479e95ffa7f3baf751beedd370cec14.tar.xz
zg-ba5d9081b479e95ffa7f3baf751beedd370cec14.zip
Normalization and case folding
Both of which deserve some further attention.
Diffstat (limited to 'codegen/ccc.zig')
-rw-r--r--codegen/ccc.zig24
1 files changed, 18 insertions, 6 deletions
diff --git a/codegen/ccc.zig b/codegen/ccc.zig
index 4e470ae..e76222f 100644
--- a/codegen/ccc.zig
+++ b/codegen/ccc.zig
@@ -112,12 +112,24 @@ pub fn main() anyerror!void {
112 defer out_file.close(); 112 defer out_file.close();
113 var writer = out_file.writer(&write_buf); 113 var writer = out_file.writer(&write_buf);
114 114
115 const endian = builtin.cpu.arch.endian(); 115 try writer.interface.print(
116 try writer.interface.writeInt(u16, @intCast(stage1.items.len), endian); 116 \\//! This file is auto-generated. Do not edit.
117 for (stage1.items) |i| try writer.interface.writeInt(u16, i, endian); 117 \\
118 118 \\pub const s1: [{}]u16 = .{{
119 try writer.interface.writeInt(u16, @intCast(stage2.items.len), endian); 119 , .{stage1.items.len});
120 try writer.interface.writeAll(stage2.items); 120 for (stage1.items) |entry| try writer.interface.print("{}, ", .{entry});
121
122 try writer.interface.print(
123 \\
124 \\}};
125 \\
126 \\pub const s2: [{}]u8 = .{{
127 , .{stage2.items.len});
128 for (stage2.items) |entry| try writer.interface.print("{}, ", .{entry});
129
130 try writer.interface.writeAll(
131 \\};
132 );
121 133
122 try writer.interface.flush(); 134 try writer.interface.flush();
123} 135}