une liste doublement chaînée, en Rust, sans unsafe
Avec RefCell<T> c'est facile.
Un structure récursive aussi c'est difficile à implémenter, tu passes un temps fou à te battre avec le compilateur pour qu'il accepte ce que tu lui décris
Soit tu choisis la facilité avec Box<T>, soit tu gères correctement les lifetimes avec &T, soit tu utilises RefCell<T>, ... il existe plein de manière différente de faire ça.
Ne pas oublier aussi std::mem::replace qui est un très bon ami dans ce genre de situation.
Avec un peu d'expérience en Rust, et un peu de googling skill, ça devient tout de suite plus facile.
Je recommande aussi ##rust sur le IRC liberachat. Ils sont actifs, et ont très souvent la réponse a toutes questions que tu pourrais avoir.
[^] # Re: C++ oh mon cher vieux C++ ...
Posté par David Delassus (site web personnel) . En réponse à la dépêche Nous avons lu pour vous : Embracing Modern C++ Safely. Évalué à 7.
Avec
RefCell<T>c'est facile.Soit tu choisis la facilité avec
Box<T>, soit tu gères correctement les lifetimes avec&T, soit tu utilisesRefCell<T>, ... il existe plein de manière différente de faire ça.Ne pas oublier aussi
std::mem::replacequi est un très bon ami dans ce genre de situation.Avec un peu d'expérience en Rust, et un peu de googling skill, ça devient tout de suite plus facile.
Je recommande aussi
##rustsur le IRC liberachat. Ils sont actifs, et ont très souvent la réponse a toutes questions que tu pourrais avoir.https://link-society.com - https://kubirds.com - https://github.com/link-society/flowg