3 个版本
0.1.2 | 2022 年 8 月 26 日 |
---|---|
0.1.1 | 2022 年 7 月 5 日 |
0.1.0 | 2022 年 5 月 12 日 |
65 在 #debug 中排名
每月下载量 152
用于 13 个 包(6 个直接使用)
6KB
52 行代码(不包括注释)
输出没有特质的值(通过特化来找到正确的实现)
输出 impl Debug 类型的值的类型,输出 unimplDebug 的类型名。
例如
#[derive(Debug)]
struct A(usize);
struct B(usize);
fn main() {
println_any!("{:?}", A(1)); // output: A(1)
println_any!("{:?}", B(1)); // output: `pi_print_any::B`
print_any!("{:?}", A(1)); // output: A(1)
print_any!("{:?}", B(1)); // output: `pi_print_any::B`
}
除了使用 print 和 println 输出外,还可以使用其他宏进行输出,out_any
允许您传递希望使用的输出宏
例如
#[derive(Debug)]
struct A(usize);
struct B(usize);
fn main() {
out_any!(log::info, "{:?}", A(1)); // output: A(1)
out_any!(log::info, "{:?}", B(1)); // output: `pi_print_any::B`
}
lib.rs
:
输出没有特质的值(通过特化来找到正确的实现)
输出 impl Debug 类型的值的类型,输出 unimplDebug 的类型名。
例如
#[derive(Debug)]
struct A(usize);
struct B(usize);
fn main() {
println!("{:?}", A(1)); // output: A(1)
println!("{:?}", B(1)); // output: `pi_print_any::B`
}
注意:这使用了实验性的 Rust 功能,因此它是实验性和不稳定的,并且具有所有 feature(specialization)
的问题。