From 55ad7c32f2d534b1fbd438204d21738f958c51a5 Mon Sep 17 00:00:00 2001 From: Dave Gauer Date: Tue, 9 Feb 2021 18:36:57 -0500 Subject: Moved exercises to exercises because exercises --- 21_errors.zig | 46 ---------------------------------------------- 1 file changed, 46 deletions(-) delete mode 100644 21_errors.zig (limited to '21_errors.zig') diff --git a/21_errors.zig b/21_errors.zig deleted file mode 100644 index 34c5e18..0000000 --- a/21_errors.zig +++ /dev/null @@ -1,46 +0,0 @@ -// -// Believe it or not, sometimes things to wrong in programs. -// -// In Zig, an error is a value. Errors are named so we can identify -// things that can go wrong. Errors are created in "error sets", which -// are just a collection of named errors. -// -// We have the start of an error set, but we're missing the condition -// "TooSmall". Please add it where needed! -const MyNumberError = error{ - TooBig, - ???, - TooFour, -}; - -const std = @import("std"); - -pub fn main() void { - var nums = [_]u8{2,3,4,5,6}; - - for (nums) |n| { - std.debug.print("{}", .{n}); - - const number_error = numberFail(n); - - if (number_error == MyNumberError.TooBig) { - std.debug.print(">4. ", .{}); - } - if (???) { - std.debug.print("<4. ", .{}); - } - if (number_error == MyNumberError.TooFour) { - std.debug.print("=4. ", .{}); - } - } - - std.debug.print("\n", .{}); -} - -// Notice how this function can return any member of the MyNumberError -// error set. -fn numberFail(n: u8) MyNumberError { - if(n > 4) return MyNumberError.TooBig; - if(n < 4) return MyNumberError.TooSmall; // <---- this one is free! - return MyNumberError.TooFour; -} -- cgit v1.2.3-ZIG