b4de659438
Renaming uninformative names like `optional_value`, `value`, `optional_values_vec` and `value` helps users distinguish between the two parts of the task.
25 lines
797 B
Rust
25 lines
797 B
Rust
// option2.rs
|
|
// Make me compile! Execute `rustlings hint option2` for hints
|
|
|
|
// I AM NOT DONE
|
|
|
|
fn main() {
|
|
let optional_word = Some(String::from("rustlings"));
|
|
// TODO: Make this an if let statement whose value is "Some" type
|
|
word = optional_word {
|
|
println!("The word is: {}", word);
|
|
} else {
|
|
println!("The optional word doesn't contain anything");
|
|
}
|
|
|
|
let mut optional_integers_vec: Vec<Option<i8>> = Vec::new();
|
|
for x in 1..10 {
|
|
optional_integers_vec.push(Some(x));
|
|
}
|
|
|
|
// TODO: make this a while let statement - remember that vector.pop also adds another layer of Option<T>
|
|
// You can stack `Option<T>`'s into while let and if let
|
|
integer = optional_integers_vec.pop() {
|
|
println!("current value: {}", integer);
|
|
}
|
|
}
|