I was wondering about this code:
#[inline(always)]
pub fn multiply_u128<T>(a: T, b: T, result: &mut[u64]) {
let r = a as u128 * b as u128;
//fill result with 64 bit chunks
}
it will work for integers except when T is u128. In this case we could get overflows.
Is it possible to make this function work with u8, u16, u32, u64 but not u128?