aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/exercises/35_enums.zig
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/35_enums.zig')
-rw-r--r--exercises/35_enums.zig20
1 files changed, 13 insertions, 7 deletions
diff --git a/exercises/35_enums.zig b/exercises/35_enums.zig
index cf455a4..1825f52 100644
--- a/exercises/35_enums.zig
+++ b/exercises/35_enums.zig
@@ -6,7 +6,7 @@
// 1. Having to remember op codes by number is no good.
// 2. We had to use "unreachable" because Zig had no way of knowing
// how many valid op codes there were.
-//
+//
// An "enum" is a Zig construct that lets you give names to numeric
// values and store them in a set. They look a lot like error sets:
//
@@ -16,11 +16,11 @@
//
// Let's use an enum in place of the numbers we were using in the
// previous version!
-//
+//
const std = @import("std");
// Please complete the enum!
-const Ops = enum{ ??? };
+const Ops = enum { ??? };
pub fn main() void {
const operations = [_]Ops{
@@ -29,16 +29,22 @@ pub fn main() void {
Ops.inc,
Ops.pow,
Ops.dec,
- Ops.dec
+ Ops.dec,
};
var current_value: u32 = 0;
for (operations) |op| {
switch (op) {
- Ops.inc => { current_value += 1; },
- Ops.dec => { current_value -= 1; },
- Ops.pow => { current_value *= current_value; },
+ Ops.inc => {
+ current_value += 1;
+ },
+ Ops.dec => {
+ current_value -= 1;
+ },
+ Ops.pow => {
+ current_value *= current_value;
+ },
// No "else" needed! Why is that?
}