kn_cuda_eval/util.rs
1use std::fmt::{Debug, Formatter};
2
3pub fn debug_vec_multiline<'a, T: Debug>(prefix: &'a str, values: &'a [T]) -> impl Debug + 'a {
4 struct Wrapper<'a, T>(&'a str, &'a [T]);
5 impl<'a, T: Debug> Debug for Wrapper<'a, T> {
6 fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
7 writeln!(f, "[")?;
8 for v in self.1 {
9 writeln!(f, "{}{}{:?},", self.0, self.0, v)?;
10 }
11 write!(f, "{}]", self.0)?;
12 Ok(())
13 }
14 }
15 Wrapper(prefix, values)
16}