class IntIndex implements Index {

  public Selection greaterThan(int value) {
    Selection selection = new BitmapBackedSelection();
    Int2ObjectSortedMap<IntArrayList> tail = index.tailMap(value + 1);
    for (IntArrayList keys : tail.values()) {
      addAllToSelection(keys, selection);
    }
    return selection;
  }

}

class IntIndexTest {

  private ColumnType[] types;
  private DoubleIndex index;
  private IntIndex dateIndex;
  private Table table;

  @Test
  public void testGT1() {

    LocalDate date = LocalDate.of(2002, 4, 1);
    int value = PackedLocalDate.pack(date);
    Selection fromCol = table.dateColumn("date").eval(DateAndTimePredicates.isGreaterThan, value);
    Selection fromIdx = dateIndex.greaterThan(value);
    Selection fromIdx1 = dateIndex.greaterThan(date);
    assertEquals(fromCol, fromIdx);
    assertEquals(fromCol, fromIdx1);
  }

}