mp_units::scale¶
Scale value by the unit magnitude passed as m, converting to type To.
Synopsis¶
Declared in <mp-units/framework/scaling.h>
template<typename To, UnitMagnitude M, typename From>
requires detail::UnitMagnitudeScalable<From>
[[nodiscard]] constexpr auto scale(M m, From const& value);
Description¶
When From provides a magnitude-aware operator*(From,M) customization point, it is used first. The return type may differ from To (e.g. a representation with scaled bounds). Otherwise, the built-in floating-point or integer path is used and the result type is To.
Use this in custom operator*(T, UnitMagnitude) implementations to reuse the library's built-in scaling logic instead of duplicating it.
Return Value¶
Note
The return value should not be discarded.