#log #chaining #logging #traits

logchop

使用内联方法记录你的 ResultOption

3 个版本

0.1.2 2021 年 2 月 3 日
0.1.1 2021 年 1 月 31 日
0.1.0 2021 年 1 月 31 日

#534 in 调试

每月 41 次下载
git-req 中使用

Apache-2.0

21KB
374

Latest version

LogChop

它比糟糕要好,它是好的!

使用内联方法记录你的 ResultOption 链。

变为

match maybe_something {
    Some(x) => Some(x),
    None => {
        debug!("Nothing found!");
        None
    }
}.

maybe_something.debug_none("Nothing found!")

当你从结果开始链式调用时,这会很有用

use logchop::*;

parse_id_string(id_str)
    .trace_ok("Found id")
    .debug_err("Couldn't parse ID")
    .map_or_else(|id| get_widget_by_id(id), |_| get_default_widget())
    .info_ok_format(|widget| format!("Found widget: {}", widget.name))
# Sucessful parse result
[trace] Found id: 12
[info ] Found widget: chainsaw

# Error parsing result
[debug] Couldn't parse ID: Invalid format
[info ] Found widget: concilation prize

再见,不必要的代码块!

文档

在 Docs.rs 上可用.

安装和使用

将以下内容添加到您的 Cargo.toml

logchop = "0.1"

然后导入 traits: use logchop::*

依赖项

~91KB