Update: 108 Labeled switch example to contain default case for exhaustion
Update example text to give clarity on default/exhaustive case. Reasoning: The input for the example will not compile if user would want to test this for the logic of a labeled switch. Due the input not being an exhaustive input but rather "any u8 integer" (for the lack of better terminology) we need to use the else branch to indicate that the default case is handled, in this case by just emulating the '4' branch, but this could return an error.InvalidCaseProvided for example. Signed-off-by: mikkurogue <michael.lindemans@outlook.com>
This commit is contained in:
parent
5ed3af57ee
commit
de353bcb3b
1 changed files with 4 additions and 0 deletions
|
@ -35,6 +35,7 @@
|
||||||
// 2 => continue :foo 3,
|
// 2 => continue :foo 3,
|
||||||
// 3 => return,
|
// 3 => return,
|
||||||
// 4 => {},
|
// 4 => {},
|
||||||
|
// else => {},
|
||||||
// }
|
// }
|
||||||
// std.debug.print("This statement cannot be reached");
|
// std.debug.print("This statement cannot be reached");
|
||||||
// }
|
// }
|
||||||
|
@ -46,6 +47,9 @@
|
||||||
// 3. In the case '2' we repeat the same pattern as case '1'
|
// 3. In the case '2' we repeat the same pattern as case '1'
|
||||||
// but instead the value to be evaluated is now '3';
|
// but instead the value to be evaluated is now '3';
|
||||||
// 4. Finally we get to case '3', where we return from the function as a whole.
|
// 4. Finally we get to case '3', where we return from the function as a whole.
|
||||||
|
// 5. In this example as the input has no clear exhaustive patterns but a essentially
|
||||||
|
// any u8 integer, we need do need to handle any case that is not explicitly handled
|
||||||
|
// by using the `else => {}` branch as a default case.
|
||||||
//
|
//
|
||||||
// Since step 4 or a break stament do not exist in this switch, the debug statement is
|
// Since step 4 or a break stament do not exist in this switch, the debug statement is
|
||||||
// never executed
|
// never executed
|
||||||
|
|
Loading…
Add table
Reference in a new issue