Nouvelle approche pour les tampons non initialisés en Rust : le trait Buffer

2025-05-21

Les tampons non initialisés en Rust ont longtemps posé problème. John Nunley et Alex Saveau ont introduit une solution novatrice utilisant un trait `Buffer`. Ce trait permet une lecture sécurisée dans les tampons non initialisés, fournissant des implémentations pour `&mut [T]` et `&mut [MaybeUninit]`. Il exploite également intelligemment la capacité supplémentaire de `Vec` et encapsule l'appel non sécurisé `Vec::set_len`. Cette approche est désormais intégrée à rustix 1.0 et publiée sous forme de bibliothèque autonome, `buffer-trait`, avec une possible inclusion future dans la bibliothèque standard de Rust.

Développement