toHuman method
Formats this duration as compact human-readable text.
Implementation
String toHuman() {
if (inMicroseconds.abs() < Duration.microsecondsPerMillisecond) {
return '${inMicroseconds.abs()}us';
}
if (inMilliseconds.abs() < Duration.millisecondsPerSecond) {
return '${inMillisecondsDouble.abs().toStringAsFixed(0)}ms';
}
if (inSeconds.abs() < Duration.secondsPerMinute) {
return '${inSecondsDouble.abs().toStringAsFixed(1)}s';
}
if (inMinutes.abs() < Duration.minutesPerHour) {
return '${inMinutes.abs()}m ${inSeconds.abs().remainder(60)}s';
}
if (inHours.abs() < Duration.hoursPerDay) {
return '${inHours.abs()}h ${inMinutes.abs().remainder(60)}m';
}
return '${inDaysDouble.abs().toStringAsFixed(1)}d';
}