summaryrefslogtreecommitdiff
path: root/exercises/option
diff options
context:
space:
mode:
Diffstat (limited to 'exercises/option')
-rw-r--r--exercises/option/README.md9
-rw-r--r--exercises/option/option1.rs23
2 files changed, 32 insertions, 0 deletions
diff --git a/exercises/option/README.md b/exercises/option/README.md
new file mode 100644
index 0000000..d17b79c
--- /dev/null
+++ b/exercises/option/README.md
@@ -0,0 +1,9 @@
+### Option
+
+#### Book Sections
+
+To learn about Option<T>, check out these links:
+
+- [Option Enum Format](https://doc.rust-lang.org/stable/book/ch10-01-syntax.html#in-enum-definitions)
+- [Option Module Documentation](https://doc.rust-lang.org/std/option/)
+- [Option Enum Documentation](https://doc.rust-lang.org/std/option/enum.Option.html)
diff --git a/exercises/option/option1.rs b/exercises/option/option1.rs
new file mode 100644
index 0000000..51c39f5
--- /dev/null
+++ b/exercises/option/option1.rs
@@ -0,0 +1,23 @@
+// option1.rs
+// Make me compile! Execute `rustlings hint option1` for hints
+
+// I AM NOT DONE
+
+// you can modify anything EXCEPT for this function's sig
+fn print_number(maybe_number: Option<u16>) {
+ println!("printing: {}", maybe_number.unwrap());
+}
+
+fn main() {
+ print_number(13);
+ print_number(99);
+
+ let mut numbers: [Option<u16>; 5];
+ for iter in 0..5 {
+ let number_to_add: u16 = {
+ ((iter * 5) + 2) / (4 * 16)
+ };
+
+ numbers[iter] = number_to_add;
+ }
+}