addMonths static method

DateTime addMonths(
  1. DateTime date,
  2. int count
)

Adds the specified number of months to the given DateTime.

Implementation

static DateTime addMonths(DateTime date, int count) {
  assert(count >= 0);

  int newYear =
      date.year + count ~/ 12 + ((date.month + count % 12) > 12 ? 1 : 0);

  int newMonth = (date.month + count) % 12 == 0
      ? 12
      : (date.month + count) % 12;

  DateTime newData = DateTime(newYear, newMonth, date.day);

  return newData;
}