output without the trait bounds (using specialization to find the right impl anyway)
output value for type of impl Debug, output type name for unimplDebug.
``
#[derive(Debug)]
struct A(usize);
struct B(usize);
fn main() {
println_any!("{:?}", A(1)); // output: A(1)
println_any!("{:?}", B(1)); // output:
piprintany::B`
print_any!("{:?}", A(1)); // output: A(1)
print_any!("{:?}", B(1)); // output: `pi_print_any::B`
}
```
In addition to using print and println output, you can also use other macros to output, out_any
allows you to pass in the output macro you want to use
#[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`
}