1 个不稳定版本
0.1.1 | 2020年7月25日 |
---|---|
0.1.0 |
|
#562 in 调试
18KB
337 代码行
q
为疲惫的Rust程序员提供的快速且简单的调试工具。
示例用法
#[macro_use]
extern crate q_debug;
fn hello(name: &str) -> String {
q!(name);
format!("Hello, {}!", name)
}
fn main() {
// No message
q!();
// Identifier
let name = "SteadBytes";
q!(name);
// Returns expression values
let greeting = q!(hello(name));
q!(greeting);
q!(Some(42));
}
使用以下命令运行上述代码:cargo run --example simple
将以下内容写入 $TMP_DIR/q
(/tmp/q
在Linux上)
[19:13:49 ThreadId(1) examples/simple.rs simple::main:11]
>
> name = "SteadBytes"
[19:13:49 ThreadId(1) examples/simple.rs simple::hello:5]
> name = "SteadBytes"
[19:13:49 ThreadId(1) examples/simple.rs simple::main:18]
> hello(name) = "Hello, SteadBytes!"
> greeting = "Hello, SteadBytes!"
> Some(42) = Some(42)
当调用函数或模块发生更改时,会以常规(可配置)的间隔记录标题行。
通过 q
调用返回表达式值。
灵感来自
为什么这个crate叫做 q-debug
而不是 q
?
q
很不幸已经被占用(尽管我不确定它是做什么的...)。
依赖
~1MB
~18K SLoC