1
0
mirror of https://github.com/rust-lang/rustlings.git synced 2024-11-08 09:09:17 +01:00

move_semantics4: Avoid using the dereference operator

This commit is contained in:
mo8it 2024-07-10 13:50:39 +02:00
parent 59d6b852af
commit d7024d80ce
2 changed files with 9 additions and 9 deletions

@ -8,11 +8,11 @@ mod tests {
// Don't add, change or remove any line. // Don't add, change or remove any line.
#[test] #[test]
fn move_semantics4() { fn move_semantics4() {
let mut x = 100; let mut x = Vec::new();
let y = &mut x; let y = &mut x;
let z = &mut x; let z = &mut x;
*y += 100; y.push(42);
*z += 1000; z.push(13);
assert_eq!(x, 1200); assert_eq!(x, [42, 13]);
} }
} }

@ -7,15 +7,15 @@ mod tests {
// TODO: Fix the compiler errors only by reordering the lines in the test. // TODO: Fix the compiler errors only by reordering the lines in the test.
// Don't add, change or remove any line. // Don't add, change or remove any line.
#[test] #[test]
fn move_semantics5() { fn move_semantics4() {
let mut x = 100; let mut x = Vec::new();
let y = &mut x; let y = &mut x;
// `y` used here. // `y` used here.
*y += 100; y.push(42);
// The mutable reference `y` is not used anymore, // The mutable reference `y` is not used anymore,
// therefore a new reference can be created. // therefore a new reference can be created.
let z = &mut x; let z = &mut x;
*z += 1000; z.push(13);
assert_eq!(x, 1200); assert_eq!(x, [42, 13]);
} }
} }