processDate method

  1. @override
DateTime processDate(
  1. DateTime date,
  2. DateDirection direction, {
  3. DateTime? limit,
})
override

A method that processes date with custom logic.

Implementation

@override
DateTime processDate(
  DateTime date,
  DateDirection direction, {
  DateTime? limit,
}) {
  if ((limit != null) &&
      (direction.isPrevious ? date.isBefore(limit) : date.isAfter(limit))) {
    throw DateTimeLimitReachedException(date: date, limit: limit);
  }
  if (invalidator.invalid(date)) return date;
  if (!direction.isPrevious) return next(date, limit: limit);
  return previous(date, limit: limit);
}