| ... | @@ -310,22 +310,17 @@ pub fn add_files_package(pkg_name: string, mdir: std.fs.Dir, dirs: []const strin | ... | @@ -310,22 +310,17 @@ pub fn add_files_package(pkg_name: string, mdir: std.fs.Dir, dirs: []const strin |
| 310 | \\ | 310 | \\ |
| 311 | ); | 311 | ); |
| 312 | try w.print("const srcpath = \"../../../{}\";\n\n", .{std.zig.fmtEscapes(fpath[1..])}); | 312 | try w.print("const srcpath = \"../../../{}\";\n\n", .{std.zig.fmtEscapes(fpath[1..])}); |
| 313 | try w.writeAll( | | |
| 314 | \\const files = std.ComptimeStringMap(string, .{ | | |
| 315 | \\ | | |
| 316 | ); | | |
| 317 | var iter = map.iterator(); | 313 | var iter = map.iterator(); |
| 318 | while (iter.next()) |item| { | 314 | while (iter.next()) |item| { |
| 319 | try w.print(" .{{ .@\"0\" = \"/{}\", .@\"1\" = @embedFile(srcpath ++ \"/{}\") }},\n", .{ std.zig.fmtEscapes(item.key_ptr.*), std.zig.fmtEscapes(item.value_ptr.*) }); | 315 | try w.print("pub const @\"/{}\" = @embedFile(srcpath ++ \"/{}\");\n", .{ std.zig.fmtEscapes(item.key_ptr.*), std.zig.fmtEscapes(item.value_ptr.*) }); |
| 320 | } | 316 | } |
| 321 | try w.writeAll("\n"); | 317 | try w.writeAll("\n"); |
| 322 | try w.writeAll( | 318 | try w.writeAll( |
| 323 | \\}); | | |
| 324 | \\ | | |
| 325 | \\pub fn open(comptime path: string) ?string { | 319 | \\pub fn open(comptime path: string) ?string { |
| 326 | \\ if (path.len == 0) return null; | 320 | \\ if (path.len == 0) return null; |
| 327 | \\ if (path[0] != '/') return null; | 321 | \\ if (path[0] != '/') return null; |
| 328 | \\ return files.get(path); | 322 | \\ if (!@hasDecl(@This(), path)) return null; |
| | 323 | \\ return @field(@This(), path); |
| 329 | \\} | 324 | \\} |
| 330 | \\ | 325 | \\ |
| 331 | ); | 326 | ); |