summaryrefslogtreecommitdiff
path: root/exercises/06_move_semantics/move_semantics4.rs
diff options
context:
space:
mode:
authormo8it <mo8it@proton.me>2024-06-21 18:14:19 +0200
committermo8it <mo8it@proton.me>2024-06-21 18:14:19 +0200
commite4dbbbf5f5f5d4ea0ede1ead1f82108968e6cea6 (patch)
treec69d3486b375e4642faac66b57c9eed8e0f249cd /exercises/06_move_semantics/move_semantics4.rs
parentfd558065c7f32d38d1b8e34fda1a23fe40d1b3ab (diff)
Remove move_semantics4, add rest of move_semantics solutions
Diffstat (limited to 'exercises/06_move_semantics/move_semantics4.rs')
-rw-r--r--exercises/06_move_semantics/move_semantics4.rs31
1 files changed, 9 insertions, 22 deletions
diff --git a/exercises/06_move_semantics/move_semantics4.rs b/exercises/06_move_semantics/move_semantics4.rs
index b662224..c225f3b 100644
--- a/exercises/06_move_semantics/move_semantics4.rs
+++ b/exercises/06_move_semantics/move_semantics4.rs
@@ -1,31 +1,18 @@
-// Refactor this code so that instead of passing `vec0` into the `fill_vec`
-// function, the Vector gets created in the function itself and passed back to
-// the test function.
-
-// `fill_vec()` no longer takes `vec: Vec<i32>` as argument - don't change this!
-fn fill_vec() -> Vec<i32> {
- // Instead, let's create and fill the Vec in here - how do you do that?
- let mut vec = vec;
-
- vec.push(88);
-
- vec
-}
-
fn main() {
// You can optionally experiment here.
}
#[cfg(test)]
mod tests {
- use super::*;
-
+ // TODO: Fix the compiler errors only by reordering the lines in the test.
+ // Don't add, change or remove any line.
#[test]
- fn move_semantics4() {
- let vec0 = vec![22, 44, 66];
-
- let vec1 = fill_vec(vec0);
-
- assert_eq!(vec1, vec![22, 44, 66, 88]);
+ fn move_semantics5() {
+ let mut x = 100;
+ let y = &mut x;
+ let z = &mut x;
+ *y += 100;
+ *z += 1000;
+ assert_eq!(x, 1200);
}
}