simple_vector2 2.1.5

A simple libary for generic vector manipulation that just works.
Documentation
use core::ops::Mul;
use crate::Vector2;

macro_rules! impl_vec_mul {
    ($m: ty) => {
        impl Mul<Vector2<$m>> for $m {
            type Output = Vector2<$m>;

            fn mul(self, rhs: Vector2<$m>) -> Self::Output {
                Vector2 {
                    x: self * rhs.x,
                    y: self * rhs.y,
                }
            }
        }
    };
}

impl_vec_mul!(u8);
impl_vec_mul!(u16);
impl_vec_mul!(u32);
impl_vec_mul!(u64);
impl_vec_mul!(u128);
impl_vec_mul!(usize);

impl_vec_mul!(i8);
impl_vec_mul!(i16);
impl_vec_mul!(i32);
impl_vec_mul!(i64);
impl_vec_mul!(i128);
impl_vec_mul!(isize);

impl_vec_mul!(f32);
impl_vec_mul!(f64);