我有NSManagedObject
个子类,我希望他们确认我的自定义协议JSONInitializable
有我的协议:
protocol JSONInitializable {
static func getAllEntities <T: NSManagedObject>(persistenceController: PersistenceController) -> [T]
}
我的NSManagedObject
子类函数导致错误:
class CDShipment: NSManagedObject, JSONInitializable {
class func getAllEntities(persistenceController: PersistenceController) -> [CDShipment] {
let request = NSFetchRequest(entityName: "CDShipment")
let sorter = NSSortDescriptor(key: "managedNumber", ascending: true)
request.sortDescriptors = [sorter]
do {
let results = try persistenceController.mainMoc?.executeFetchRequest(request) as! [CDShipment]
return results
} catch {
print("Error while getting all CDShipments")
return []
}
}
}
错误:
协议要求函数'getAllEntities'的类型为'(PersistenceController) - &gt; [T]'(又名'&lt;τ_1_0&gt; PersistenceController - &gt;数组&lt;τ_1_0&gt;')
候选人具有非匹配类型'(PersistenceController) - &gt; [T]'(又名'&lt;τ_0_0&gt; PersistenceController - &gt;数组&lt;τ_0_0&gt;')