0
我的情況類似於下面與.Net相關的問題。如何在Swift中將類型(符合約束條件)類型化爲泛型?
Value of type 'T' cannot be converted to TServiceResponse是 我的代碼:
public class TServiceResponse : ResponseNode,CommsObject{
public var type : String!
public var Status : String?
required public init?(_ dictionary: NSDictionary){
self.type = dictionary.field("$type")
self.Status = dictionary.field("Status")
}
}
public enum WebResult<T : ResponseNode> {
case Result(JsonResponse<T>)
case Error(NSError)
}
func executePost<Message : RequestMessage, Node : ResponseNode>(request: JsonPostRequest<Message>,
completionHandler: (result: WebResult<Node>) -> Void) -> NSURLSessionTask?{
if let jsonResponse : JsonResponse<TServiceResponse> = self.createResponse(data, error: &runtimeError){
return completionHandler(result: (jsonResponse as? WebResult<Node>)!)
}
}
我相信,我首先問失敗仿製藥的目的。但是有沒有破解可以完成這件事?我需要這個破解來確保我對代碼做了最小的修改。