operator + method
Override the addition operator to manage the Temperature/TemperatureInterval
relationship.
- Adding a
Temperature
returns a Temperature object. - Adding a
TemperatureInterval
returns a TemperatureInterval object.
Implementation
@override
Quantity operator +(dynamic addend) {
if (addend is TemperatureInterval) {
final newValueSI = valueSI + addend.valueSI;
final ur = Quantity.calcRelativeCombinedUncertaintySumDiff(
this, addend, newValueSI);
return TemperatureInterval(K: newValueSI, uncert: ur);
} else if (addend is Temperature) {
final newValueSI = valueSI + addend.valueSI;
final ur = Quantity.calcRelativeCombinedUncertaintySumDiff(
this, addend, newValueSI);
return Temperature(K: newValueSI, uncert: ur);
} else {
return super + addend;
}
}