使用旧的Rust 2015
0.0.2 |
|
---|---|
0.0.1 |
|
135 在 #escaping 中
4KB
unsafesc
主页 | https://github.com/realtable/unsafesc |
---|---|
文档 | https://docs.rs/unsafesc |
cargo | https://crates.io/crates/unsafesc |
构建 | https://travis-ci.cn/realtable/unsafesc |
摘要
unsafesc
库提供了一个接口来使用Rust的四个“不安全超能力”,即
- 取消引用原始指针,
- 调用不安全函数或方法,
- 访问或修改可变静态变量,以及
- 实现不安全特质
如果您使用的是常规(安全)Rust,则无法使用这些不安全函数,因为它们已被编译器“锁定”。另一方面,不安全Rust使它们启用,但您必须确保所有不安全代码没有未定义的行为。您也只可以在其他不安全函数内使用不安全代码/函数。
unsafesc
包提供两者的最佳之处,即提供访问不安全超能力的同时,也关注未定义行为。它还解锁了仅在不安全函数内部实现这些超能力。
安装
cargo install unsafesc
用法
在其当前形式中,unsafesc
是一个占位符包。将来,它的所有功能都将实现,但目前还没有。