我有在XCode 6 beta中工作的代码,但更新到xcode 6.1后最近停止工作。
这是我的协议:
protocol CanDeserialiseFromJson {
class func FromJson(json : JSONValue) -> Self
}
这是实现:
extension Invoice : CanDeserialiseFromJson {
class func FromJson(json : JSONValue) -> Self {
return Invoice()
}
}
这无法给出错误:
'Invoice' is not convertable to 'Self'
正如我所说,这曾经奏效,我无法弄清为什么不再奏效
Self
协议中的要求是协议的实现必须使用自己的类型。由于Invoice
是您采用协议的类型,因此您的实现FromJson
应具有的返回类型Invoice
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句