aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/exercises/23_errors3.zig
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/23_errors3.zig')
-rw-r--r--exercises/23_errors3.zig28
1 files changed, 0 insertions, 28 deletions
diff --git a/exercises/23_errors3.zig b/exercises/23_errors3.zig
deleted file mode 100644
index a465737..0000000
--- a/exercises/23_errors3.zig
+++ /dev/null
@@ -1,28 +0,0 @@
-//
-// One way to deal with error unions is to "catch" any error and
-// replace it with a default value.
-//
-// foo = canFail() catch 6;
-//
-// If canFail() fails, foo will equal 6.
-//
-const std = @import("std");
-
-const MyNumberError = error{TooSmall};
-
-pub fn main() void {
- var a: u32 = addTwenty(44) catch 22;
- var b: u32 = addTwenty(4) ??? 22;
-
- std.debug.print("a={}, b={}", .{ a, b });
-}
-
-// Please provide the return type from this function.
-// Hint: it'll be an error union.
-fn addTwenty(n: u32) ??? {
- if (n < 5) {
- return MyNumberError.TooSmall;
- } else {
- return n + 20;
- }
-}