#proc-macro #procedural #macro-utilities

everyday_macros

这个crate包含了你在日常编码中可能会用到的所有过程宏。例如线程休眠计时器或错误重试。

1 个不稳定版本

0.1.0 2020年12月25日

#1081过程宏

Apache-2.0 OR MIT

12KB
264

everyday_macros

这个crate包含了你在日常编码中可能会用到的所有过程宏。例如线程休眠计时器或错误重试。

入门指南

要将线程休眠计时器添加到函数的前置代码中。它使用 std::thread::sleep 作为默认函数,并且对于异步使用 tokio::time::sleep。它还具有添加范围为 [0, N) 的抖动的能力。

	#[wait_for(seconds=3)]
	fn my_func_to_sleep(args: any_amount){
		...
	}

	#[wait_for(seconds=3, jitter)]
	fn my_func_to_sleep(args: any_amount){
		...
	}

要添加一个围绕你的函数的 Harness,在上面添加以下内容。目前对异步不支持!

	#[retry(times=3)]
	fn my_func_that_can_fail(args: any_amount) -> Result<(), Err>{
		...
	}

运行测试

只需运行

git clone https://github.com/P3GLEG/everyday_macros && cd everyday_macros
cargo test -- --color always --nocapture

作者

  • 保罗·加尼亚 - 初始工作 - pegleg

许可证

本项目采用Apache 2.0许可证 - 请参阅LICENSE文件以获取详细信息

依赖

~3.5–5MB
~87K SLoC