pub fn inv<'out, T>(out: &'out mut [T; 9], a: &[T; 9]) -> &'out mut [T; 9]where T: Clone + One + Zero + Add<T, Output = T> + Sub<T, Output = T>, for<'a, 'b> &'a T: Mul<&'b T, Output = T> + Div<&'b T, Output = T>,
let mut m = mat3::new_identity::<f32>(); mat3::inv(&mut m, &mat3::new_identity::<f32>()); assert_eq!(m, mat3::new_identity::<f32>());