This crate provides a procedural macro to require deferred drop for a type that implements DeferredDrop.
DeferredDrop