ExpertiDict

Rust · Essencial · Inglês · Técnico

impl

/ˈɪmpəl/palavra-chave

Palavra-chave que abre um bloco com métodos de um tipo ou com a implementação de um trait para ele. Separa os dados, definidos na struct, do comportamento.

Onde usar

Aparece em todo código com métodos: impl Tipo para os métodos próprios e impl Trait for Tipo para cumprir contratos. É permitido ter vários blocos impl para o mesmo tipo.

Em código

struct Retangulo { l: u32, a: u32 }
impl Retangulo {
  fn area(&self) -> u32 {
    self.l * self.a
  }
}
let r = Retangulo { l: 2, a: 3 };
println!("{}", r.area());

Exemplos

Put the constructor in the impl block.

Coloque o construtor no bloco impl.

I'll write the impl for the new trait.

Vou escrever o impl do novo trait.

Cuidado

impl não é herança: ele só acrescenta métodos ao tipo, sem criar relação de subtipo.

Sinônimos

bloco de implementação

Origem

Abreviação de implementation, 'implementação'.

Veja também

Todos os termos de Rust