1 use std::pin::Pin; 2 3 use pin_project::{pin_project, pinned_drop}; 4 5 #[pin_project(PinnedDrop)] 6 struct Struct<T, U> { 7 #[pin] 8 pinned: T, 9 unpinned: U, 10 } 11 12 #[pinned_drop] 13 impl<T, U> PinnedDrop for Struct<T, U> { drop(self: Pin<&mut Self>)14 fn drop(self: Pin<&mut Self>) { 15 let _ = self; 16 } 17 } 18 main()19fn main() {} 20