authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-05-30 03:34:59 -07:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-05-30 03:34:59 -07:00
logc61b820567505899198bb425c2b7c459a1f3cce2
tree49f39732a5ac5dd8c87597d431f12be85914afba
parentc855473c8bd15dd24a4e8b6911b7e006062004ba
signaturebadge-check Signed by SSH key SHA256:4hHJbtBRU58AYXwjL7fkz2fnQHdiye8x1QpTCQ0sHNw

add Dir.exists and Dir.existsDir


1 files changed, 18 insertions(+), 0 deletions(-)

Dir.zig+18
......@@ -395,3 +395,21 @@ pub fn deleteTree(self: Dir, sub_path: [:0]const u8) !void {
395395 }
396396 try self.deleteDir(sub_path);
397397}
398
399pub fn exists(self: Dir, sub_path: [:0]const u8) !bool {
400 self.access(sub_path, .{}, 0) catch |err| switch (err) {
401 error.ENOENT => return false,
402 else => |e| return e,
403 };
404 return true;
405}
406
407pub fn existsDir(self: Dir, sub_path: [:0]const u8) !bool {
408 var dir = self.openDir(sub_path, .{}) catch |err| switch (err) {
409 error.ENOENT => return false,
410 error.ENOTDIR => return false,
411 else => |e| return e,
412 };
413 dir.close();
414 return true;
415}