Tut i Rustit Tabela e permbajtjeve

Polimorfizmi Me Traite

Rust mbështet polimorfizmin me traite. Traitet na lejojnë të lidhim një grup metodash me një lloj struct-i.

Së pari përcaktojmë nënshkrimet e metodave të një traiti:

trait MyTrait {
    fn foo(&self);
    ...
}

Kur një struct implementon një trait, kjo krijon një kontratë që na lejon të ndërveprojmë në mënyrë indirekte me struct-in nëpërmjet llojit trait (p.sh. &dyn MyTrait), pa pasur nevojë të dimë llojin e vërtetë.

Metodat trait të implementuara nga një struct përcaktohen brenda një blloku implementimi:

impl MyTrait for MyStruct {
    fn foo(&self) {
        ...
    }
    ...
}