print method

String print()

Prints a Duration as a formatted string.

Example:

final duration = Duration(hours: 1, minutes: 5, seconds: 30);
duration.print(); // "01:05:30"

Implementation

String print() {
  final negativeSign = isNegative ? '-' : '';
  String twoDigits(int n) => n.toString().padLeft(2, '0');
  final twoDigitMinutes = twoDigits(inMinutes.remainder(60).abs());
  final twoDigitSeconds = twoDigits(inSeconds.remainder(60).abs());
  final twoDigitHours = twoDigits(inHours);
  if (inHours > 0) {
    return '$negativeSign$twoDigitHours:$twoDigitMinutes:$twoDigitSeconds';
  }
  return '$negativeSign$twoDigitMinutes:$twoDigitSeconds';
}