Open nlewycky opened 4 years ago
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Feel free to reopen the issue if it has been closed by mistake.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Not stale.
Motivation
Code cleanup!
Proposed solution
The VMContext objects have raw pointers in order to permit access by the compiler-generated code. In practice the pointed-to objects must not be moved or freed or replaced with object of different type. Rust allows us to encode exactly this property using the Pin<> type, and Pin<> is #[repr(transparent)] so they will still work with our existing compiler-generated code.