RFC: #[derive(SmartPointer)]

Make it possible to define custom smart pointers that work with trait objects. For now, it will only be possible to do this using a derive macro, as we do not stabilize the underlying traits.

You can read the full RFC on the Rust RFCs website.