а вообще это хороший пример тому, о чём я говорил. Почему safe - мусор. Его ограниченность не позволяет сделать api для unsafe, даже api, потому как оно не влезает
>In short, the idea is that if you have a &mut Generator reference, it would be treated similarly to a *mut Generator reference for the purposes of aliasing rules (in stacked borrows terms, SharedRw; in LLVM terms, it would not be marked noalias).