3 个版本
使用旧的 Rust 2015
0.1.2 | 2018年12月2日 |
---|---|
0.1.1 | 2018年12月2日 |
0.1.0 | 2018年12月2日 |
#70 在 #failure
11KB
my-pretty-failure
my-pretty-failure 以优雅的方式显示 failure(及上下文)
用法
Cargo.toml
[dependencies]
my-pretty-failure = "0.1.2"
用法 No.1
使用默认选项
extern crate my_pretty_failure;
use my_pretty_failure::myprettyfailure;
fn main() {
let err = err1().unwrap_err(); // your failure
println!("{}", myprettyfailure(&err)); // or panic!
}
控制台输出
🔥 error
---------------------------------------------------------
a long err1
---------------------------------------------------------
▶ caused by: a very long err2
▶ caused by: an another deep err3
---------------------------------------------------------
用法 No.2
使用您的选项
extern crate my_pretty_failure;
use my_pretty_failure::{myprettyfailure_option, MyPrettyFailurePrint};
extern crate yansi; // or ansi_term, colored ...
fn main() {
let err = err1().unwrap_err(); // your failure
println!("{}", myprettyfailure_option(MyPrettyFailurePrint {
head: format!("🔔 my pretty app catch an {}", yansi::Paint::red("error")),
separator: "- - - - - - - - - - - - - - - - - - -".to_string(),
causedby: "context".to_string(),
}, &err));
}
控制台输出
🔔 my pretty app catch an error
- - - - - - - - - - - - - - - - - - -
a long err1
- - - - - - - - - - - - - - - - - - -
▶ context: a very long err2
▶ context: an another deep err3
- - - - - - - - - - - - - - - - - - -
其他示例
cargorun --examplehelpme
链接
许可证
版权所有 © 2018, Alban Minassian
在此特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许获得软件的人进行此类操作,前提是必须遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不提供任何形式的保证,无论是明示的还是暗示的,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,作者或版权所有者X不对任何索赔、损害或其他责任承担责任,无论是否基于合同、侵权或其他原因,是否因软件或软件的使用或其他交易而产生、产生于或与此类软件或软件的使用或其他交易有关。除非本通知中另有规定,否则不得使用 Alban Minassian 的名称进行广告或以其他方式推广本软件的销售、使用或其他交易,而无需事先获得 Alban Minassian 的书面授权。
依赖关系
~64KB