in paimon-common/src/main/java/org/apache/paimon/data/InternalRow.java [119:159]
static Class<?> getDataClass(DataType type) {
// ordered by type root definition
switch (type.getTypeRoot()) {
case CHAR:
case VARCHAR:
return BinaryString.class;
case BOOLEAN:
return Boolean.class;
case BINARY:
case VARBINARY:
return byte[].class;
case DECIMAL:
return Decimal.class;
case TINYINT:
return Byte.class;
case SMALLINT:
return Short.class;
case INTEGER:
case DATE:
case TIME_WITHOUT_TIME_ZONE:
return Integer.class;
case BIGINT:
return Long.class;
case FLOAT:
return Float.class;
case DOUBLE:
return Double.class;
case TIMESTAMP_WITHOUT_TIME_ZONE:
case TIMESTAMP_WITH_LOCAL_TIME_ZONE:
return Timestamp.class;
case ARRAY:
return InternalArray.class;
case MULTISET:
case MAP:
return InternalMap.class;
case ROW:
return InternalRow.class;
default:
throw new IllegalArgumentException("Illegal type: " + type);
}
}