Turul limbajului Rust Cuprins

Funcții generice

Tipurile generice în Rust funcționează mâna în mâna cu trăsăturile. Când descriem un tip parametrizat T, putem constrânge ce tipuri pot fi folosite ca argumente, listând trăsăturile necesare (în engleză „trait bound”) pe care argumentul trebuie să le implementeze.

În acest exemplu, tipul T trebuie să implementeze trăsătură Foo:

fn functia_mea<T>(foo: T)
where
    T:Foo
{
    ...
}

Folosind tipurile generice, creăm șabloane de funcții care au tipuri de date ce vor fi înlocuite la momentul compilării cu tipuri de date cunoscute, permițându-ne să utilizăm apelarea statică.