3个版本

0.0.2 2020年3月7日
0.0.1 2020年3月2日
0.0.0-alpha2020年3月1日

#643 in 内存管理

Zlib许可证

34KB
535

License:Zlib crates.io docs.rs

chromium

帮助增加你的金属的稳定性!

有关实际内容的解释,请参阅crate文档


lib.rs:

Chromium帮助增加你的金属的稳定性。

具体来说,这个crate允许你将选定的repr(Rust)类型转换为包含所有必要数据的repr(C)结构体,以便安全地重建原始的repr(Rust)形式。

这主要用于将Rust代码一侧的数据通过C ABI "FFI"调用发送到FFI调用另一侧的Rust代码。即使数据在编译器版本之间发生变化,由于C ABI是稳定的,每一侧都将能够将信息转换回本地所需的形式。

当然,如果你需要,你也可以用这个与非Rust代码进行通信。

这里提供的类型在将自身转换回repr(Rust)形式之外提供了相当基本的功能。根据需要,提供了一些基本的如DebugDeref等功能,但对于任何严重使用,预期你只需将值转换回Rust形式并使用数据的“真实”形式。

特性

  • unsafe_alloc启用对VecStringBox的支持。
    • 注意,在这种情况下,你不得在不同全局分配器之间转移分配。
    • 截至2020年3月6日,Windows / Mac / Linux的默认全局分配器是进程级分配器。如果你更改全局分配器,可能会出现问题。如果Rust标准库更改其全局分配器,可能会出现问题。
    • 这是一个脆弱的特性,不要轻易使用。这就是为什么它直接在特性名称中说“不安全”。

没有运行时依赖

特性