pub trait TypeCommon{
type Vec: VecTrait<Self> + Send + Copy + IntoVec<Self::Vec> + Index<usize, Output = Self> + IndexMut<usize> + Sync + Debug + NormalOutUnary + NormalOut<Self::Vec, Output = Self::Vec> + FloatOutUnary + FloatOutBinary + FloatOutBinary<<Self::Vec as FloatOutUnary>::Output, Output = <Self::Vec as FloatOutUnary>::Output>;
const MAX: Self;
const MIN: Self;
const ZERO: Self;
const ONE: Self;
const INF: Self;
const NEG_INF: Self;
const TWO: Self;
const SIX: Self;
const TEN: Self;
const STR: &'static str;
const BYTE_SIZE: usize;
}Expand description
common trait for all data types
This trait is used to define the common properties of all data types
Required Associated Constants§
Sourceconst INF: Self
const INF: Self
the infinity value of the data type, for integer types, it is the maximum value
Required Associated Types§
Sourcetype Vec: VecTrait<Self> + Send + Copy + IntoVec<Self::Vec> + Index<usize, Output = Self> + IndexMut<usize> + Sync + Debug + NormalOutUnary + NormalOut<Self::Vec, Output = Self::Vec> + FloatOutUnary + FloatOutBinary + FloatOutBinary<<Self::Vec as FloatOutUnary>::Output, Output = <Self::Vec as FloatOutUnary>::Output>
type Vec: VecTrait<Self> + Send + Copy + IntoVec<Self::Vec> + Index<usize, Output = Self> + IndexMut<usize> + Sync + Debug + NormalOutUnary + NormalOut<Self::Vec, Output = Self::Vec> + FloatOutUnary + FloatOutBinary + FloatOutBinary<<Self::Vec as FloatOutUnary>::Output, Output = <Self::Vec as FloatOutUnary>::Output>
the simd vector type of the data type
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".