rust / intermediate
Snippet
Generische Schranken mit Traits
Generische Schranken ermöglichen es, einen generischen Typ so einzuschränken, dass er bestimmte Verhaltensweisen (Traits) implementieren muss. Dies stellt sicher, dass die Funktion die benötigten Methoden sicher aufrufen kann.
snippet.rs
1
2
3
4
5
6
7
trait Summary {fn summarize(&self) -> String;}fn notify<T: Summary>(item: &T) {println!("Breaking news: {}", item.summarize());}
Erklärung
1
trait Summary {
Definiert einen Trait namens Summary.
2
fn notify<T: Summary>(item: &T) {
Eine Funktion, die einen generischen Typ T akzeptiert, welcher den Summary-Trait implementieren muss.