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

View file

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

View file

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