presto-iceberg/src/main/java/io/prestosql/plugin/iceberg/PartitionData.java/PartitionData/getValue
class PartitionData:    public static Object getValue(JsonNode partitionValue, Type type)
    {
        if (partitionValue.isNull()) {
            return null;
        }
        switch (type.typeId()) {
            case BOOLEAN:
                return partitionValue.asBoolean();
            case INTEGER:
            case DATE:
                return partitionValue.asInt();
            case LONG:
            case TIMESTAMP:
                return partitionValue.asLong();
            case FLOAT:
                return partitionValue.floatValue();
            case DOUBLE:
                return partitionValue.doubleValue();
            case STRING:
            case UUID:
                return partitionValue.asText();
            case FIXED:
            case BINARY:
                try {
                    return partitionValue.binaryValue();
                }
                catch (IOException e) {
                    throw new UncheckedIOException("Failed during JSON conversion of " + partitionValue, e);
                }
            case DECIMAL:
                return partitionValue.decimalValue();
        }
        throw new UnsupportedOperationException("Type not supported as partition column: " + type);
    }