#glob-pattern #dev #development #filename

debug-rs

受 NodeJS debug 模块启发的 Rust 调试包,带颜色显示,包括包名、文件名和行号,支持 glob 模式过滤。

4 个版本

使用旧的 Rust 2015

0.1.3 2017 年 8 月 9 日
0.1.2 2017 年 8 月 8 日
0.1.1 2017 年 8 月 8 日
0.1.0 2017 年 8 月 8 日

#40 in #glob-pattern

每月 25 次下载

MIT 许可证

7KB
81

debug-rs — 构建状态 最新版本 文档 许可证

受 NodeJS debug 模块启发的 Rust 调试包。

特性

  • 彩色输出
  • 包含包名、文件名和行号
  • 支持 glob 模式过滤。

安装

debug-rs = "*"

或使用 cargo-edit

cargo add debug-rs

使用方法

以下是 examples 文件夹中的代码

#[macro_use]
extern crate debug_rs;


fn main() {
    debug!(666, 33, "aaa");

    debug!(vec![1, 2, 3]);
}

然后使用环境变量 DEBUG=debug 运行(因为 examples 的包名仍然是 debug

如果环境变量 DEBUG 未定义,则不会打印任何内容。

Windows

在 Windows Shell 中运行环境变量可能会有所不同

DEBUG=*,-not_this cargo run // for *unix
// or
set DEBUG=*,-not_this; cargo run // for windows
// or
$env:DEBUG = "*,-not_this"; cargo run // for PowerShell

DEBUG 格式

  1. 单个 glob 模式:例如,DEBUG=debug*
  2. 多 glob 模式,以逗号分隔:例如,DEBUG=debug:examples*,hyper*,
  3. 使用“-”前缀排除全局模式:例如,DEBUG=*,-not_this*

输出格式

<package name>:<file name>:L<line number> ...custom variables

性能

debug_build_only 特性可以使调试宏在发布模式下不生成任何代码,默认是开启的。您可以通过在 Cargo.toml 中配置功能来禁用它。

以发布模式工作


[dependencies]
debug-rs = { version = "*", default-features=false }

由功能控制

[dependencies]
debug-rs = { version = "*", default-features=false, features=["disable"] }

许可

MIT

依赖项

~3–11MB
~113K SLoC