diff --git a/fixed_wide_vectors/src/macros/fixed_wide.rs b/fixed_wide_vectors/src/macros/fixed_wide.rs index 1cf0cb9..7679939 100644 --- a/fixed_wide_vectors/src/macros/fixed_wide.rs +++ b/fixed_wide_vectors/src/macros/fixed_wide.rs @@ -10,18 +10,15 @@ macro_rules! impl_wide_vector_operations_const { $( $field: self.$field.[](rhs.$field) ), + } } + #[inline] + pub fn [](self,rhs:$struct>)->fixed_wide::fixed::Fixed<{$lhs+$rhs},{($lhs+$rhs)*32}>{ + $crate::sum_repeating!( + $( + (self.$field.[](rhs.$field)) ) + + ) + } } } /* - impl,U,T:fixed_wide_traits::wide::WideMul> fixed_wide_traits::wide::WideDot<$struct> for $struct { - type Output=V; - #[inline] - fn wide_dot(self, rhs: $struct) -> Self::Output { - $crate::sum_repeating!( - $( + (self.$field.wide_mul(rhs.$field)) ) + - ) - } - } impl,T:Copy+fixed_wide_traits::wide::WideMul> $struct { #[inline] pub fn wide_length_squared(&self) -> U {