#abort #standard #require #process #explicitly #exception #abort-guard

已删除 abort-nostd

一个不需要标准库的abort函数

1 个不稳定版本

0.1.0 2024年5月20日

#7 in #explicitly

Apache-2.0 OR MIT

7KB
50 代码行

abort-nostd 最新版本

一个无需标准库即可工作的abort函数的实现。

提供了一个AbortGuard类型,除非显式“解除”,否则将终止进程。这可以防止在中间的unsafe代码中展开panic,这可以使代码变得异常安全

可用实现

该库提供了多种可能的实现,可以通过使用功能标志来控制。

  1. 使用Rust标准库的std::process::abort函数。这通过使用"std"功能启用(默认禁用)。
  2. 使用C标准库中的abort函数从libc crate。这需要链接到C标准库,而不是Rust库。这通过使用"libc"功能启用(默认禁用)。
  3. 如果已知panic实现会中止而不是展开,则abort函数将简单地触发panic。这需要Rust(1.60)的最新版本才能检测panic是否展开或中止。
  4. 如果没有其他实现可用,

许可证

根据您的选择,在Apache License,Version 2.0或MIT许可证下许可。除非您明确表示,否则任何有意提交给本项目以供包含的由您提供的贡献,根据Apache-2.0许可证定义,应如上所述双重许可,而无需任何其他条款或条件。

依赖项

~15KB