nextMonth static method

DateTime nextMonth(
  1. DateTime m
)

Implementation

static DateTime nextMonth(DateTime m) {
  int year = m.year;
  int month = m.month;
  int day = m.day;

  // Increase the month
  month++;

  // If month goes beyond December, switch to January of the next year
  if (month > 12) {
    month = 1;
    year++;
  }

  // Handle cases where the day might not exist in the next month (e.g., January 31st)
  while (day > DateTime(year, month + 1, 0).day) {
    day--;
  }

  return DateTime(year, month, day);
}