in Sources/SparkConnect/ArrowDecoder.swift [156:170]
mutating func decode<T>(_ type: T.Type) throws -> T where T: Decodable {
if type == Int8?.self || type == Int16?.self || type == Int32?.self || type == Int64?.self
|| type == UInt8?.self || type == UInt16?.self || type == UInt32?.self || type == UInt64?.self
|| type == String?.self || type == Double?.self || type == Float?.self || type == Date?.self
|| type == Bool?.self || type == Bool.self || type == Int8.self || type == Int16.self
|| type == Int32.self || type == Int64.self || type == UInt8.self || type == UInt16.self
|| type == UInt32.self || type == UInt64.self || type == String.self || type == Double.self
|| type == Float.self || type == Date.self
{
defer { increment() }
return try self.decoder.doDecode(self.currentIndex)!
} else {
throw ArrowError.invalid("Type \(type) is currently not supported")
}
}