1
我有一个类,需要一个通用的class Collection: <T: Model>
(Model
是一个类)和协议(Resource
)的一些Collection
子类实现:扩展一个协议,其中自:泛型类型斯威夫特(需要参数在<...>)
class Collection: <T: Model> {
typealias Callback = (result: Collection <T>) ->()
}
protocol Resource {...}
是否可以写一个协议扩展名Self
是Collection
的实例?
试图与类扩展协议,需要一个通用:
extension Resource where Self: Collection {
func fetch() {}
}
给出:
参考通用类型 '集合' 需要参数在< ...>
试图扩展带有ag的类eneric与协议:
extension Collection where Self: Resource {
func fetch(callback: Callback?) {}
}
给出:
“自我”只适用于一个协议或方法的一类,结果
我不知道如何进行。目标是使该功能仅适用于符合Resource
的Collection
的实例。