Traits Derivados
As macros derive
do Rust funcionam gerando automaticamente o cĂłdigo que implementa os traits especificados para uma estrutura de dados.
VocĂȘ pode deixar o compilador derivar uma sĂ©rie de traits tais como:
#[derive(Debug, Clone, PartialEq, Eq, Default)] struct Player { name: String, strength: u8, hit_points: u8, } fn main() { let p1 = Player::default(); let p2 = p1.clone(); println!("{:?} Ă©\nigual a {:?}?\nA resposta Ă© {}!", &p1, &p2, if p1 == p2 { "sim" } else { "nĂŁo" }); }