minusDays method

HDate minusDays(
  1. int numDays
)

Returns date in past given number of days

Implementation

HDate minusDays(int numDays) {
  if (numDays == 0) return this;
  if (numDays < 0) return plusDays(-numDays);
  int year = this.year;
  int month = this.month;
  int day = this.day;

  for (; numDays > 0; --numDays) {
    day--;
    if (day <= 0) {
      month--;
      if (month < 1) {
        month = 12;
        year--;
      }
      day = daysInMonth(year, month);
    }
  }
  return HDate(year, month, day);
}