Skip to content

mp_units::value_cast

Synopsis

Declared in <mp-units/framework/value_cast.h>

template<typename ToRep, Unit auto ToU, typename FwdQ, RoundingPolicy Policy = truncated_t,
         Quantity Q = std::remove_cvref_t<FwdQ>>
  requires UnitOf<MP_UNITS_NTTP_TYPE(ToU), Q::quantity_spec> && RepresentationOf<ToRep, Q::quantity_spec> &&
           std::constructible_from<ToRep, typename Q::rep> && detail::ExplicitlyCastable<Q::unit, ToU, ToRep> &&
           detail::ValidRoundingPolicyFor<Policy, typename Q::rep, ToRep>
[[nodiscard]] constexpr Quantity auto value_cast(FwdQ&& q, Policy policy = Policy{});

Return Value

Note

The return value should not be discarded.