ColumnMap { public <T> Tuple<T> map(Tuple<T> src) { return map(src, insertOrder) ; } ColumnMap(String input, String output); <T> ColumnMap(String label, List<T> input, List<T> output); <T> ColumnMap(String label, T[] input, T[] output);  ColumnMap(String label, int...elements); int length(); T fetchSlot(int idx, Tuple<T> tuple); T fetchSlot(int idx, T[] tuple); T mapSlot(int idx, Tuple<T> tuple); T mapSlot(int idx, T[] tuple); int mapSlotIdx(int idx); int fetchSlotIdx(int idx); Tuple<T> map(Tuple<T> src); Tuple<T> unmap(Tuple<T> src); @Override String toString(); String getLabel(); String mapName(String word); String unmapName(String word);  }
@Test public void remap3() { ColumnMap x = new ColumnMap("POS", 2,0,1) ; Tuple<String> tuple = tuple("S", "P", "O") ; Tuple<String> mapped = x.map(tuple) ; Tuple<String> expected = tuple("P", "O", "S") ; assertEquals(expected, mapped) ; }