pub trait Vector<T, Rhs = Self, Output = Self>:
Add<Rhs, Output = Output>
+ Sub<Rhs, Output = Output>
+ Mul<Rhs, Output = Output, Output = Output>
+ Mul<T>
+ Div<Rhs, Output = Output, Output = Output>
+ Div<T>
+ Neg<Output = Output>
+ Clone
+ Copywhere
T: Scalar,{
// Required methods
fn zero() -> Self;
fn add_vv(l: &Self, r: &Self) -> Self;
fn sub_vv(l: &Self, r: &Self) -> Self;
fn mul_vv(l: &Self, r: &Self) -> Self;
fn div_vv(l: &Self, r: &Self) -> Self;
fn mul_vs(l: &Self, r: T) -> Self;
fn div_vs(l: &Self, r: T) -> Self;
fn rem_vv(l: &Self, r: &Self) -> Self;
fn dot(l: &Self, r: &Self) -> T;
fn min(l: &Self, r: &Self) -> Self;
fn max(l: &Self, r: &Self) -> Self;
}
Required Methods§
fn zero() -> Self
fn add_vv(l: &Self, r: &Self) -> Self
fn sub_vv(l: &Self, r: &Self) -> Self
fn mul_vv(l: &Self, r: &Self) -> Self
fn div_vv(l: &Self, r: &Self) -> Self
fn mul_vs(l: &Self, r: T) -> Self
fn div_vs(l: &Self, r: T) -> Self
fn rem_vv(l: &Self, r: &Self) -> Self
fn dot(l: &Self, r: &Self) -> T
fn min(l: &Self, r: &Self) -> Self
fn max(l: &Self, r: &Self) -> Self
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.