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 模式

Download history • Rust 包仓库 137/week @ 2024-03-24 • Rust 包仓库 224/week @ 2024-03-31 • Rust 包仓库 161/week @ 2024-04-07 • Rust 包仓库 130/week @ 2024-04-14 • Rust 包仓库 190/week @ 2024-04-21 • Rust 包仓库 131/week @ 2024-04-28 • Rust 包仓库 121/week @ 2024-05-05 • Rust 包仓库 174/week @ 2024-05-12 • Rust 包仓库 157/week @ 2024-05-19 • Rust 包仓库 205/week @ 2024-05-26 • Rust 包仓库 142/week @ 2024-06-02 • Rust 包仓库 65/week @ 2024-06-09 • Rust 包仓库 91/week @ 2024-06-16 • Rust 包仓库 72/week @ 2024-06-23 • Rust 包仓库 68/week @ 2024-06-30 • Rust 包仓库 146/week @ 2024-07-07 • Rust 包仓库

379 次每月下载
用于 medea-jason

BlueOak-1.0.0

21KB
406

tracerr

Latest version Rust 1.56+ Rust docs CI Unsafe Forbidden

API 文档 | 变更日志

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