Skip to main content

Simplify

Trait Simplify 

Source
pub trait Simplify {
    type Scalar: Scalar;
    type Out: Unit;

    // Required method
    fn simplify(self) -> Quantity<Self::Out, Self::Scalar>;
}
Expand description

Trait for simplifying composite unit types.

This allows reducing complex unit expressions to simpler forms, such as Per<U, U> to Unitless or Per<N, Per<N, D>> to D.

Required Associated Types§

Source

type Scalar: Scalar

The scalar type of this quantity.

Source

type Out: Unit

The simplified unit type.

Required Methods§

Source

fn simplify(self) -> Quantity<Self::Out, Self::Scalar>

Convert this quantity to its simplified unit.

Implementors§

Source§

impl<N: Unit, D: Unit, S: Scalar> Simplify for Quantity<Per<N, Per<N, D>>, S>
where N::Dim: DimDiv<D::Dim> + DimDiv<<N::Dim as DimDiv<D::Dim>>::Output>, <N::Dim as DimDiv<D::Dim>>::Output: Dimension, <N::Dim as DimDiv<<N::Dim as DimDiv<D::Dim>>::Output>>::Output: Dimension,

Source§

type Scalar = S

Source§

type Out = D

Source§

impl<U: Unit, S: Scalar> Simplify for Quantity<Per<U, U>, S>
where U::Dim: DimDiv<U::Dim>, <U::Dim as DimDiv<U::Dim>>::Output: Dimension,