Tour durch Rust Inhaltsverzeichnis

Generische Funktionen

Generics arbeiten in Rust Hand in Hand mit Traits. Wenn wir einen parametrisierten Typ T beschreiben, können wir einschränken, welche Typen als Argument verwendet werden können, indem wir auflisten, welche Traits das Argument implementieren muss.

In diesem Beispiel muss der Typ T den Trait Foo implementieren:

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

Durch die Verwendung von Generics erstellen wir zur Kompilierzeit statisch typisierte Funktionen mit bekannten Typen und Größen, was es uns erlaubt, statisches Dispatch durchzuführen und sie als größenbekannten Wert zu speichern.