code: @Deprecated
      public static <T extends Calendar> T roll(final T calendar, final long amount, final CalendarUnit unit) {
          N.checkArgNotNull(calendar, "calendar");
  
          if (amount > Integer.MAX_VALUE || amount < Integer.MIN_VALUE) {
              throw new IllegalArgumentException("The amount :" + amount + " is too big for unit: " + unit);
          }
  
          final T result = createCalendar(calendar, calendar.getTimeInMillis());
  
          result.add(unit.intValue(), (int) amount);
  
          return result;
      }
docs: Adds or subtracts the specified amount of time to the given calendar
  unit, based on the calendar's rules. For example, to subtract 5 days from
  the current time of the calendar, you can achieve it by calling:
  <p>
  <code>N.roll(c, -5, CalendarUnit.DAY)</code>.
  
  @param calendar
  @param amount
  @param unit
  @return a new instance of Calendar with the specified amount rolled.
  @deprecated replaced by {@code addYears/addMonths/addWeeks/...}