将协议类型作为参数传递以在通用函数中进行解码

时间:2018-08-30 18:53:52

标签: ios swift generics

我正在尝试创建函数来处理我的应用程序中的所有Decoding操作。 该函数将接收符合Codable协议的结构类型,这是我已经实现的:

func decodeResponse(responseData:Data?, codableClass:Codable.Type) -> Codable?{
    guard let responseData = responseData else { return nil }
    let object = try! decoder.decode(codableClass.Protocol, from: responseData)

    return object
}

decode函数应接收符合Codable的类 上面的代码无法编译,我无法使其工作,并且不确定我在这里缺少什么,任何帮助将不胜感激

0 个答案:

没有答案