vecmat/matrix/
format.rs

1use crate::Matrix;
2use core::fmt::{Debug, Display, Formatter, Result as FmtResult};
3
4impl<T, const M: usize, const N: usize> Debug for Matrix<T, M, N>
5where
6    T: Debug,
7{
8    fn fmt(&self, f: &mut Formatter) -> FmtResult {
9        writeln!(f)?;
10        writeln!(f, "Matrix{}x{}(", M, N)?;
11        for j in 0..M {
12            write!(f, "  ")?;
13            for i in 0..N {
14                write!(f, "{:?}, ", self[(j, i)])?;
15            }
16            writeln!(f)?;
17        }
18        writeln!(f, ")")?;
19        Ok(())
20    }
21}
22
23impl<T, const M: usize, const N: usize> Display for Matrix<T, M, N>
24where
25    T: Display,
26{
27    fn fmt(&self, f: &mut Formatter) -> FmtResult {
28        writeln!(f)?;
29        writeln!(f, "Matrix{}x{}(", M, N)?;
30        for j in 0..M {
31            write!(f, "  ")?;
32            for i in 0..N {
33                write!(f, "{}, ", self[(j, i)])?;
34            }
35            writeln!(f)?;
36        }
37        writeln!(f, ")")?;
38        Ok(())
39    }
40}