optionalDouble method
Reads an optional double environment variable identified by key.
Returns defaultValue (or 0.0 if null) if unset or empty.
Throws BloomEnvironmentException if the variable is present but cannot be parsed as a double.
Implementation
double optionalDouble(String key,
{double? defaultValue, String? description}) {
final val = BloomEnv.getOrNull(key)?.trim();
if (val == null || val.isEmpty) {
return defaultValue ?? 0.0;
}
final parsed = double.tryParse(val);
if (parsed == null) {
final err = 'Environment variable "$key" is not a valid double: "$val".';
_validationErrors.add(err);
throw BloomEnvironmentException(err, errors: [err]);
}
return parsed;
}