A concept matching constants that are measured rather than exact by definition

Synopsis

Declared in <mp‐units/framework/unit_concepts.h>

template<typename T>
concept MeasuredConstant = Unit<T> && (requires { requires UnitMagnitude<MP_UNITS_NONCONST_TYPE(T::_relative_standard_uncertainty_)>; } ||
              requires { requires Unit<MP_UNITS_NONCONST_TYPE(T::_standard_uncertainty_)>; });

Description

Satisfied by all constants defined with a relative_standard_uncertainty or a standard_uncertainty argument. Exact constants do not have such an argument, so the distinction is visible to the type system.

Created with MrDocs