1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
//! Basic operations. /// A multiplication. pub trait Multiply<Right: ?Sized, Output> { /// Perform the multiplication. fn multiply(&self, &Right) -> Output; } /// A multiplication that adds the result to a third object. pub trait MultiplyInto<Right: ?Sized, Output: ?Sized> { /// Perform the multiplication. fn multiply_into(&self, &Right, &mut Output); } /// A multiplication that overwrites the receiver with the result. pub trait MultiplySelf<Right: ?Sized> { /// Perform the multiplication. fn multiply_self(&mut self, &Right); } /// A scaling that overwrites the receiver with the result. pub trait ScaleSelf<T> { /// Perform the scaling. fn scale_self(&mut self, T); } /// The transpose. pub trait Transpose { /// Perform the transpose. fn transpose(&self) -> Self; }