#clucompany #macro #code-transformation #no-std

no-std drop_code

宏,用于确保在 Rust 函数返回或 panic 时执行关键代码,使包括关键代码以实现可靠操作变得容易

1 个稳定版本

1.0.0 2024年4月7日

#1205 in 开发工具

Apache-2.0

22KB
404

[drop_code]

(宏,用于确保在 Rust 函数返回或 panic 时执行关键代码,使包括关键代码以实现可靠操作变得容易。)

用法

将此添加到您的 Cargo.toml 中

[dependencies]
drop_code  = "1.0.0"

并将此添加到您的源代码中

use drop_code::drop_code;

技术概念

drop_code 宏为 Rust 中的 Drop 特性生成 drop 函数代码,创建一个封装用户提供的宏参数的隐藏结构,并确保其传递。此机制确保对象销毁时执行关键操作,便于在 Rust 应用程序中可靠地处理关键代码,代码执行顺序由 Rust 的规则和约定决定。

示例

use drop_code::drop_code;

#[allow(unreachable_code)]
fn main() {
	drop_code! {
		println!("Code that must be executed in any situation."); // 3
	}
	
	println!("your code"); // 1
	panic!("panic info"); // 2
}
查看全部

许可证

本项目只有一个许可证(LICENSE-APACHE-2.0)。

  uproject  版权所有 (c) 2022-2024 #UlinProject

 (Denis Kotlyarov)。


Apache 许可证

apache2  根据 Apache License,版本 2.0 许可。



无运行时依赖