summaryrefslogtreecommitdiff
path: root/codegen/dwp.zig
diff options
context:
space:
mode:
authorGravatar Michael Chaten2025-09-14 04:11:09 -0700
committerGravatar Michael Chaten2025-09-14 04:11:09 -0700
commit749197a3f9d25e211615960c02380a3d659b20f9 (patch)
tree9c892349f0a7136edb150f27f549dc182f7699bb /codegen/dwp.zig
parentUpdate codebase to Zig 0.15.1. (diff)
downloadzg-749197a3f9d25e211615960c02380a3d659b20f9.tar.gz
zg-749197a3f9d25e211615960c02380a3d659b20f9.tar.xz
zg-749197a3f9d25e211615960c02380a3d659b20f9.zip
Embed data files in scripts rather than relying on filesystem access for easier packaging
Diffstat (limited to 'codegen/dwp.zig')
-rw-r--r--codegen/dwp.zig14
1 files changed, 4 insertions, 10 deletions
diff --git a/codegen/dwp.zig b/codegen/dwp.zig
index fad08d1..8189ad8 100644
--- a/codegen/dwp.zig
+++ b/codegen/dwp.zig
@@ -31,14 +31,10 @@ pub fn main() anyerror!void {
31 var flat_map = std.AutoHashMap(u21, i4).init(allocator); 31 var flat_map = std.AutoHashMap(u21, i4).init(allocator);
32 defer flat_map.deinit(); 32 defer flat_map.deinit();
33 33
34 var line_buf: [4096]u8 = undefined;
35
36 // Process DerivedEastAsianWidth.txt 34 // Process DerivedEastAsianWidth.txt
37 var deaw_file = try std.fs.cwd().openFile("data/unicode/extracted/DerivedEastAsianWidth.txt", .{}); 35 var deaw_reader = std.io.Reader.fixed(@embedFile("DerivedEastAsianWidth.txt"));
38 defer deaw_file.close();
39 var deaw_reader = deaw_file.reader(&line_buf);
40 36
41 while (deaw_reader.interface.takeDelimiterExclusive('\n')) |line| { 37 while (deaw_reader.takeDelimiterExclusive('\n')) |line| {
42 if (line.len == 0) continue; 38 if (line.len == 0) continue;
43 39
44 // @missing ranges 40 // @missing ranges
@@ -94,11 +90,9 @@ pub fn main() anyerror!void {
94 }, 90 },
95 } 91 }
96 // Process DerivedGeneralCategory.txt 92 // Process DerivedGeneralCategory.txt
97 var dgc_file = try std.fs.cwd().openFile("data/unicode/extracted/DerivedGeneralCategory.txt", .{}); 93 var dgc_reader = std.io.Reader.fixed(@embedFile("DerivedGeneralCategory.txt"));
98 defer dgc_file.close();
99 var dgc_reader = dgc_file.reader(&line_buf);
100 94
101 while (dgc_reader.interface.takeDelimiterExclusive('\n')) |line| { 95 while (dgc_reader.takeDelimiterExclusive('\n')) |line| {
102 if (line.len == 0 or line[0] == '#') continue; 96 if (line.len == 0 or line[0] == '#') continue;
103 const no_comment = if (std.mem.indexOfScalar(u8, line, '#')) |octo| line[0..octo] else line; 97 const no_comment = if (std.mem.indexOfScalar(u8, line, '#')) |octo| line[0..octo] else line;
104 98