From c61b820567505899198bb425c2b7c459a1f3cce2 Mon Sep 17 00:00:00 2001 From: Meghan Denny Date: Sat, 30 May 2026 03:34:59 -0700 Subject: [PATCH] add Dir.exists and Dir.existsDir --- Dir.zig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Dir.zig b/Dir.zig index ff6ccc81aeb0b07aa45f8c1c095926152358f90b..b8e58be2faaaee47947d40bfbf00b4892f28cc30 100644 --- a/Dir.zig +++ b/Dir.zig @@ -395,3 +395,21 @@ pub fn deleteTree(self: Dir, sub_path: [:0]const u8) !void { } try self.deleteDir(sub_path); } + +pub fn exists(self: Dir, sub_path: [:0]const u8) !bool { + self.access(sub_path, .{}, 0) catch |err| switch (err) { + error.ENOENT => return false, + else => |e| return e, + }; + return true; +} + +pub fn existsDir(self: Dir, sub_path: [:0]const u8) !bool { + var dir = self.openDir(sub_path, .{}) catch |err| switch (err) { + error.ENOENT => return false, + error.ENOTDIR => return false, + else => |e| return e, + }; + dir.close(); + return true; +} -- 2.54.0