private T completeCollection()

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;
  }