-
Notifications
You must be signed in to change notification settings - Fork 4k
Closed
Description
Now in DictionaryEncoder#encode it use reflection to pull out the set method and then set values.
Set values by reflection is not efficient and code structure is not elegant such as
Method setter = null;
for (Class<?> c : Arrays.asList(int.class, long.class)) {
try {
setter = indices.getClass().getMethod("setSafe", int.class, c);
break;
} catch (NoSuchMethodException e) {
// ignore
}
}
Implement a common interface for int vectors to directly get set method and set values seems a good choice.
Reporter: Ji Liu / @tianchen92
Assignee: Ji Liu / @tianchen92
PRs and other links:
Note: This issue was originally created as ARROW-5726. Please see the migration documentation for further details.