floorTo method

DateTime floorTo(
  1. Duration duration
)

Floors the DateTime to the nearest interval of the given duration.

Implementation

DateTime floorTo(Duration duration) {
  if (duration == Duration.zero) return this;
  final micros = microsecondsSinceEpoch;
  final newMicros =
      (micros ~/ duration.inMicroseconds) * duration.inMicroseconds;
  return DateTime.fromMicrosecondsSinceEpoch(newMicros, isUtc: isUtc);
}