ziglings/patches/patches/106_files.patch
2024-03-25 16:39:45 +08:00

33 lines
2.6 KiB
Diff

diff --git a/exercises/106_files.zig b/exercises/106_files.zig
index ffa0f86..0b593ed 100644
--- a/exercises/106_files.zig
+++ b/exercises/106_files.zig
@@ -35,8 +35,8 @@ pub fn main() !void {
// by doing nothing
//
// we want to catch error.PathAlreadyExists and do nothing
- ??? => {
- ???
+ error.PathAlreadyExists => {
+ return;
},
// if is any other unexpected error we just propagate it through
else => return e,
@@ -46,7 +46,7 @@ pub fn main() !void {
// wait a minute
// opening a directory might fail!
// what should we do here?
- const output_dir: std.fs.Dir = cwd.openDir("output", .{});
+ const output_dir: std.fs.Dir = try cwd.openDir("output", .{});
// we try to open the file `zigling.txt`,
// and propagate the error up if there are any errors
@@ -56,7 +56,7 @@ pub fn main() !void {
// but here we are not yet done writing to the file
// if only there are a keyword in zig that
// allow you "defer" code execute to the end of scope...
- file.close();
+ defer file.close();
// !you are not allow to switch this two lines to before file closing line!
const byte_written = try file.write("It's zigling time!");