func toFBTypeEnum()

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)"))
}