pub fn inv<'out, T>(out: &'out mut [T; 2], b: &[T; 2]) -> &'out mut [T; 2]where T: One + Neg<Output = T>, for<'a, 'b> &'a T: Mul<&'b T, Output = T>,
let mut v = vec2::new_zero(); vec2::inv(&mut v, &[1; 2]); assert_eq!(v, [-1; 2]);