2 个不稳定版本
0.2.0 | 2023年6月7日 |
---|---|
0.1.0 | 2021年9月28日 |
#1489 在 Rust 模式
465 每月下载量
在 5 个 crate 中使用 (通过 netcorehost)
5KB
destruct-drop
用于在不丢弃容器的情况下丢弃结构体或枚举字段的宏。
用法
将 #[derive(DestructDrop)]
添加到您的 struct
或 enum
定义中。
use destruct_drop::DestructDrop;
#[derive(DestructDrop)]
struct Container {
inner: Inner
}
struct Inner;
impl Drop for Container {
fn drop(&mut self) {
println!("dropped Container");
}
}
impl Drop for Inner {
fn drop(&mut self) {
println!("dropped Inner");
}
}
fn main() {
// prints "dropped Inner" and then "dropped Container"
drop(Container { inner: Inner });
// prints only "dropped Inner"
Container { inner: Inner }.destruct_drop();
}
许可证
MIT 许可证下许可 (LICENSE 或 http://opensource.org/licenses/MIT)
依赖项
~275–730KB
~17K SLoC