in old/dekaf-core/src/main/java/org/jetbrains/dekaf/intermediate/AdaptIntermediateStructCollectingCursor.java [178:202]
private T completeCollection() {
final T result;
switch (myResultLayout.kind) {
case SINGLE_ROW:
result = !myContainer.isEmpty() ? (T) myContainer.iterator().next() : null;
break;
case ARRAY:
int n = myContainer.size();
Object[] array = (Object[]) Array.newInstance(myResultLayout.row.rowClass, n);
result = (T) myContainer.toArray(array);
break;
case LIST:
result = (T) myContainer;
break;
case SET:
result = (T) myContainer;
break;
default:
result = null; // to be compilable
assert false;
}
return result;
}