5 个不稳定版本
0.3.0 | 2021年10月27日 |
---|---|
0.2.0 | 2021年6月24日 |
0.1.2 | 2020年11月3日 |
0.1.1 | 2019年11月22日 |
0.1.0 | 2019年11月20日 |
#1167 in Rust 模式
379 次每月下载
用于 medea-jason
21KB
406 行
tracerr
为 Rust 提供自定义编译时捕获的错误追踪。
用法
通用规则
- 使用宏在调用位置捕获跟踪帧。
use tracerr::Traced;
let err = tracerr::new!("my error"); // captures frame
let res: Result<(), _> = Err(err)
.map_err(tracerr::wrap!()); // captures frame
let err: Traced<&'static str> = res.unwrap_err();
# #[cfg(not(target_os = "windows"))]
assert_eq!(
format!("{}\n{}", err, err.trace()),
r"my error
error trace:
rust_out
at src/lib.rs:6
rust_out
at src/lib.rs:9",
);
let (val, trace) = err.split();
# #[cfg(not(target_os = "windows"))]
assert_eq!(
format!("{}\n{}", val, trace),
r"my error
error trace:
rust_out
at src/lib.rs:6
rust_out
at src/lib.rs:9",
);
许可证
版权 © 2019 Instrumentisto 团队,https://github.com/instrumentisto
此软件受 Blue Oak 模型许可证 1.0.0 的条款约束。如果此文件未附带 BlueOak-1.0.0 许可证的副本,您可以从 https://blueoakcouncil.org/license/1.0.0 获取。
依赖项
~2MB
~43K SLoC