pub fn createDirPath(p: Path, io: Io, sub_path: []const u8) !void
pub fn createDirPath(p: Path, io: Io, sub_path: []const u8) !void { var buf: [Io.Dir.max_path_bytes]u8 = undefined; const joined_path = if (p.sub_path.len == 0) sub_path else p: { break :p std.fmt.bufPrint(&buf, "{s}" ++ Io.Dir.path.sep_str ++ "{s}", .{ p.sub_path, sub_path, }) catch return error.NameTooLong; }; return p.root_dir.handle.createDirPath(io, joined_path); }