#logging #dirty #programmers #quick #tired #header

q-debug

为疲惫的Rust程序员提供的快速且简单的调试工具

1 个不稳定版本

0.1.1 2020年7月25日
0.1.0 2020年7月24日

#562 in 调试

MIT 协议

18KB
337 代码行

q

Crates.io

为疲惫的Rust程序员提供的快速且简单的调试工具。

示例用法

examples/simple.rs

#[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