Macro vdbg

Source
macro_rules! vdbg {
    () => { ... };
    (__init $depth:expr ; [ $val:expr $(, $rest:expr)* ] [ $($tt:tt)* ] ) => { ... };
    (__init $depth:expr ; [ ] [ $($valstr:ident $valmove:ident $valowned:ident)* ] ) => { ... };
    (__expand $depth:ident ; [ $valstr:ident $val:ident $($rest:tt)* ] [ $($tt:tt)* ]) => { ... };
    (__expand $depth:ident ; [] [ $( $valstr:ident $valdbg:ident )* ]) => { ... };
    (__repeat $str:literal $x:ident $($rest:ident)*) => { ... };
    (__repeat $str:literal) => { ... };
    ($($val:expr),* ; depth = $depth:expr) => { ... };
    ($($val:expr),+ $(,)?) => { ... };
}
Expand description

This macro supports the same syntax as dbg!, but also supports pretty-printing Vc types.

Beware: this macro should only be used for debugging purposes. Its behavior around dependency tracking is not well-defined and could lead to unexpected results.