#constructor #destructor #init #term

contructor-derive

注册一个在主函数前后(如果是可执行文件)或加载/卸载时(如果是动态库)被调用的函数。

2 个版本

使用旧的 Rust 2015

0.1.1 2018 年 11 月 28 日
0.1.0 2018 年 11 月 28 日

#9 in #destructor

MIT/Apache

8KB
103

contructor_derive 构建状态 最新版本 Rust 文档

注册一个在主函数前后(如果是可执行文件)或加载/卸载时(如果是动态库)被调用的函数。

注意事项

除非您想要直接与 FFI 库交互,否则使用此库是不安全的。

请考虑使用 lazy-static crate 来代替它。

用法

将以下依赖项添加到您的 Cargo 清单中...

[dependencies]
contructor_derive = "0.1.0"

示例

#[macro_use]
extern crate contructor_derive;

pub static mut RAN: bool = false;

#[constructor]
extern "C" fn set_ran() {
    unsafe { RAN = true }
}

#[destructor]
extern "C" fn reset_ran() {
    unsafe { RAN = false }
}

fn main() {
    assert!(unsafe { RAN });
}

许可证

许可协议为以下之一

依赖项

~2MB
~46K SLoC