Rust · Essencial · Inglês · Técnico
clone
Método do trait Clone que cria uma cópia independente de um valor, inclusive dos dados no heap. É sempre explícito, porque pode custar caro.
Onde usar
Costuma aparecer como remendo para calar o borrow checker. Em review vira a pergunta: esse clone é necessário ou dá para emprestar?
Em código
let a = vec![1, 2];
let b = a.clone();
println!("{:?} {:?}", a, b);Exemplos
Just clone it for now and optimize later.
Só clona por enquanto e otimiza depois.
That clone allocates on every request.
Esse clone aloca a cada requisição.
Cuidado
Não confunda com Copy: Copy é implícito e barato, enquanto clone é uma chamada visível que pode alocar memória.
Sinônimos
cópia profunda
Antônimos
move
Origem
Do grego klon, 'broto, ramo'.