processDate method
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);
}