Trait fixed::traits::FixedOptionalNum
source · pub trait FixedOptionalNum: Sealedwhere
Self: Zero + Bounded + CheckedAdd + CheckedSub + CheckedNeg + CheckedMul + CheckedRem + CheckedShl + CheckedShr + SaturatingAdd + SaturatingSub + SaturatingMul + WrappingAdd + WrappingSub + WrappingNeg + WrappingMul + WrappingShl + WrappingShr + OverflowingAdd + OverflowingSub + OverflowingMul + ToPrimitive + FromPrimitive + FloatConst,{ }
Expand description
This trait is used to provide supertraits to the Fixed
trait depending
on the crate’s optional features, and should not be used directly.
If the num-traits
experimental feature is enabled, the following are
supertraits of Fixed
:
Zero
Bounded
CheckedAdd
,CheckedSub
,CheckedNeg
,CheckedMul
,CheckedRem
,CheckedShl
,CheckedShr
SaturatingAdd
,SaturatingSub
,SaturatingMul
WrappingAdd
,WrappingSub
,WrappingNeg
,WrappingMul
,WrappingShl
,WrappingShr
OverflowingAdd
,OverflowingSub
,OverflowingMul
ToPrimitive
,FromPrimitive
FloatConst
The following are supertraits of FixedStrict
as they have extra
constraints:
The following are not supertraits of Fixed
or FixedStrict
, even
though they are implemented for fixed-point numbers where applicable:
One
because not all fixed-point numbers can represent the value 1Num
because it hasOne
as a supertraitMulAdd
,MulAddAssign
becauseMulAdd::mul_add
conflicts withFixed::mul_add
Similarly, Signed
and Unsigned
are not supertraits of
FixedSigned
and FixedUnsigned
because they have Num
as a
supertrait.