Self Referential Structs in Rust (Part 1)
TL;DR Use Pin<Box<T>> for the held value (here, Me). Mark Me as unpinnable by setting a field as std::marker::PhantomPinned. Eg, _pinned: std::marker::PhantomPinned. Use Rc<RefCell<H>> for holder, (here, Holder) and store Me as raw pointers. Eg, me...
Nov 4, 202113 min read21K

