Les types génériques permettent de définir partiellement une structure ou une énumération, laissant le compilateur créer une version parfaitement définie lors de la compilation du programme.
Rust peut généralement inférer le type final en observant de quelle manière est faite l'instantiation. Si besoin,
on peut explicitement utiliser l'opérateur ::<T>
pour spécifier le type,
egalement appelé turbofish
(c'est un bon ami à moi!).