in Sources/SparkConnect/ArrowWriterHelper.swift [27:49]
func toFBTypeEnum(_ arrowType: ArrowType) -> Result<org_apache_arrow_flatbuf_Type_, ArrowError> {
let infoType = arrowType.info
if infoType == ArrowType.ArrowInt8 || infoType == ArrowType.ArrowInt16
|| infoType == ArrowType.ArrowInt64 || infoType == ArrowType.ArrowUInt8
|| infoType == ArrowType.ArrowUInt16 || infoType == ArrowType.ArrowUInt32
|| infoType == ArrowType.ArrowUInt64 || infoType == ArrowType.ArrowInt32
{
return .success(org_apache_arrow_flatbuf_Type_.int)
} else if infoType == ArrowType.ArrowFloat || infoType == ArrowType.ArrowDouble {
return .success(org_apache_arrow_flatbuf_Type_.floatingpoint)
} else if infoType == ArrowType.ArrowString {
return .success(org_apache_arrow_flatbuf_Type_.utf8)
} else if infoType == ArrowType.ArrowBinary {
return .success(org_apache_arrow_flatbuf_Type_.binary)
} else if infoType == ArrowType.ArrowBool {
return .success(org_apache_arrow_flatbuf_Type_.bool)
} else if infoType == ArrowType.ArrowDate32 || infoType == ArrowType.ArrowDate64 {
return .success(org_apache_arrow_flatbuf_Type_.date)
} else if infoType == ArrowType.ArrowTime32 || infoType == ArrowType.ArrowTime64 {
return .success(org_apache_arrow_flatbuf_Type_.time)
}
return .failure(.unknownType("Unable to find flatbuf type for Arrow type: \(infoType)"))
}