Similar to #3154
ShortCellType.union(UShortCellType) => ShortCellType
UShortCellType.union(ShortCellType) => UShortCellType
What I would expect is that it covers both of the ranges, so an increase of the bits.
UShortCellType.union(ShortCellType) => IntCellType
ByteCellType.union(UByteCellType) => ShortCellType
Union would than be something like:
def union(other: CellType): CellType =
if (equalDataType(other))
self
else if (bits < other.bits)
other
else if (bits > other.bits)
self
else if (isFloatingPoint && !other.isFloatingPoint)
self
else if (!isFloatingPoint && other.isFloatingPoint)
other
else if (bits == 8) // ByteCellType and UByteCellType
ShortCellType
else // ShortCellType and UShortCells
IntCellType
Similar to #3154
ShortCellType.union(UShortCellType) => ShortCellType
UShortCellType.union(ShortCellType) => UShortCellType
What I would expect is that it covers both of the ranges, so an increase of the bits.
UShortCellType.union(ShortCellType) => IntCellType
ByteCellType.union(UByteCellType) => ShortCellType
Union would than be something like: