Clone::clone()
Создаёт глубокую копию значения.
Сигнатура
fn clone(&self) -> SelfВозвращает независимую копию значения. Нужен, когда вы хотите сохранить оригинал, а не передать владение. Тип должен реализовывать трейт Clone.
let a = vec![1, 2, 3];
let b = a.clone();
println!("{:?} {:?}", a, b); // [1, 2, 3] [1, 2, 3]