in manifest.go [860:889]
func newPartitionFieldStat(typ PrimitiveType) fieldStats {
switch typ.(type) {
case Int32Type:
return &partitionFieldStats[int32]{cmp: getComparator[int32]()}
case Int64Type:
return &partitionFieldStats[int64]{cmp: getComparator[int64]()}
case Float32Type:
return &partitionFieldStats[float32]{cmp: getComparator[float32]()}
case Float64Type:
return &partitionFieldStats[float64]{cmp: getComparator[float64]()}
case StringType:
return &partitionFieldStats[string]{cmp: getComparator[string]()}
case DateType:
return &partitionFieldStats[Date]{cmp: getComparator[Date]()}
case TimeType:
return &partitionFieldStats[Time]{cmp: getComparator[Time]()}
case TimestampType:
return &partitionFieldStats[Timestamp]{cmp: getComparator[Timestamp]()}
case UUIDType:
return &partitionFieldStats[uuid.UUID]{cmp: getComparator[uuid.UUID]()}
case BinaryType:
return &partitionFieldStats[[]byte]{cmp: getComparator[[]byte]()}
case FixedType:
return &partitionFieldStats[[]byte]{cmp: getComparator[[]byte]()}
case DecimalType:
return &partitionFieldStats[Decimal]{cmp: getComparator[Decimal]()}
default:
panic(fmt.Sprintf("expected primitive type for partition type: %s", typ))
}
}