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
的實例。