diff options
| author | 2026-02-04 15:02:12 -0500 | |
|---|---|---|
| committer | 2026-02-04 15:02:12 -0500 | |
| commit | 1a9168ab7d1d5337ec954f7897c2e6b51a0bd95e (patch) | |
| tree | 35847e74f41a0a75870b08d8a5fbbb0f1bd0d378 /codegen | |
| parent | Merge pull request 'Move part of the `DisplayWidth.strWidth` into its own `Di... (diff) | |
| download | zg-1a9168ab7d1d5337ec954f7897c2e6b51a0bd95e.tar.gz zg-1a9168ab7d1d5337ec954f7897c2e6b51a0bd95e.tar.xz zg-1a9168ab7d1d5337ec954f7897c2e6b51a0bd95e.zip | |
Convert Graphemes to static allocation
And DisplayWidth, although untested at present.
The plan is to just work through the codegen / module pairings, and
move tests over until everything is covered.
Diffstat (limited to 'codegen')
| -rw-r--r-- | codegen/dwp.zig | 24 | ||||
| -rw-r--r-- | codegen/gbp.zig | 36 |
2 files changed, 44 insertions, 16 deletions
diff --git a/codegen/dwp.zig b/codegen/dwp.zig index 75ac68e..b4d1ed0 100644 --- a/codegen/dwp.zig +++ b/codegen/dwp.zig | |||
| @@ -235,12 +235,24 @@ pub fn main() anyerror!void { | |||
| 235 | defer out_file.close(); | 235 | defer out_file.close(); |
| 236 | var writer = out_file.writer(&write_buf); | 236 | var writer = out_file.writer(&write_buf); |
| 237 | 237 | ||
| 238 | const endian = builtin.cpu.arch.endian(); | 238 | try writer.interface.print( |
| 239 | try writer.interface.writeInt(u16, @intCast(stage1.items.len), endian); | 239 | \\//! This file is auto-generated. Do not edit. |
| 240 | for (stage1.items) |i| try writer.interface.writeInt(u16, i, endian); | 240 | \\ |
| 241 | 241 | \\pub const s1: [{}]u16 = .{{ | |
| 242 | try writer.interface.writeInt(u16, @intCast(stage2.items.len), endian); | 242 | , .{stage1.items.len}); |
| 243 | for (stage2.items) |i| try writer.interface.writeInt(i8, i, endian); | 243 | for (stage1.items) |entry| try writer.interface.print("{}, ", .{entry}); |
| 244 | |||
| 245 | try writer.interface.print( | ||
| 246 | \\ | ||
| 247 | \\}}; | ||
| 248 | \\ | ||
| 249 | \\pub const s2: [{}]i4 = .{{ | ||
| 250 | , .{stage2.items.len}); | ||
| 251 | for (stage2.items) |entry| try writer.interface.print("{}, ", .{entry}); | ||
| 252 | |||
| 253 | try writer.interface.writeAll( | ||
| 254 | \\}; | ||
| 255 | ); | ||
| 244 | 256 | ||
| 245 | try writer.interface.flush(); | 257 | try writer.interface.flush(); |
| 246 | } | 258 | } |
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 | } |