1pub struct Disposable(Box<dyn Drop>); 2 3impl Disposable { 4 pub fn new<T>(value: T) -> Disposable 5 where 6 T: Drop + 'static, 7 { 8 Disposable(Box::new(value)) 9 } 10}