mirror of
https://github.com/rust-lang/rustlings.git
synced 2024-12-26 00:00:03 +03:00
move_semantics3 solution
This commit is contained in:
parent
68142aff7f
commit
fd558065c7
|
@ -1,6 +1,4 @@
|
||||||
// Make me compile without adding new lines -- just changing existing lines! (no
|
// TODO: Fix the compiler error in the function without adding any new line.
|
||||||
// lines with multiple semicolons necessary!)
|
|
||||||
|
|
||||||
fn fill_vec(vec: Vec<i32>) -> Vec<i32> {
|
fn fill_vec(vec: Vec<i32>) -> Vec<i32> {
|
||||||
vec.push(88);
|
vec.push(88);
|
||||||
|
|
||||||
|
@ -18,9 +16,7 @@ mod tests {
|
||||||
#[test]
|
#[test]
|
||||||
fn move_semantics3() {
|
fn move_semantics3() {
|
||||||
let vec0 = vec![22, 44, 66];
|
let vec0 = vec![22, 44, 66];
|
||||||
|
|
||||||
let vec1 = fill_vec(vec0);
|
let vec1 = fill_vec(vec0);
|
||||||
|
assert_eq!(vec1, [22, 44, 66, 88]);
|
||||||
assert_eq!(vec1, vec![22, 44, 66, 88]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1 +1,22 @@
|
||||||
// Solutions will be available before the stable release. Thank you for testing the beta version 🥰
|
fn fill_vec(mut vec: Vec<i32>) -> Vec<i32> {
|
||||||
|
// ^^^ added
|
||||||
|
vec.push(88);
|
||||||
|
|
||||||
|
vec
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() {
|
||||||
|
// You can optionally experiment here.
|
||||||
|
}
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
mod tests {
|
||||||
|
use super::*;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn move_semantics3() {
|
||||||
|
let vec0 = vec![22, 44, 66];
|
||||||
|
let vec1 = fill_vec(vec0);
|
||||||
|
assert_eq!(vec1, [22, 44, 66, 88]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue