auto static method
Implementation
static Dimension<dynamic> auto(Object value, Unit units) {
final id = units.id;
if (value is Dimension) {
return value.to(units);
}
final double val = (value as num).toDouble();
if (id < 0) return Ratio(val, units);
if (id >= 0 && id < 10) return Angular(val, units);
if (id >= 10 && id < 20) return Distance(val, units);
if (id >= 30 && id < 40) return Energy(val, units);
if (id >= 40 && id < 50) return Pressure(val, units);
if (id >= 50 && id < 60) return Temperature(val, units);
if (id >= 60 && id < 70) return Velocity(val, units);
if (id >= 70 && id < 80) return Weight(val, units);
if (id >= 80 && id < 90) return Time(val, units);
if (id >= 90 && id < 100) return Torque(val, units);
throw Exception('Unit ID $id is not supported for casting');
}