class TimeColumn extends AbstractColumn<TimeColumn, LocalTime> implements CategoricalColumn<LocalTime>,
        TimeFilters,
        TimeFillers<TimeColumn>,
        TimeMapFunctions {

  @Override
  public TimeColumn appendObj(Object obj) {
    if (obj == null) {
      return appendMissing();
    }
    if (obj instanceof LocalTime) {
      return append((LocalTime) obj);
    }
    if (obj instanceof Time) {
      Time time = (Time) obj;
      return append(time.toLocalTime());
    }
    throw new IllegalArgumentException(
        "Cannot append " + obj.getClass().getName() + " to TimeColumn");
  }

  private  TimeColumn(String name, IntArrayList times);
  private  TimeColumn(String name);

}