NSManagedObject子类不确认协议

时间:2016-03-16 18:49:37

标签: ios swift core-data protocols

我有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 []
 }
}
}

错误:

  1. 协议要求函数'getAllEntities'的类型为'(PersistenceController) - &gt; [T]'(又名'&lt;τ_1_0&gt; PersistenceController - &gt;数组&lt;τ_1_0&gt;')

  2. 候选人具有非匹配类型'(PersistenceController) - &gt; [T]'(又名'&lt;τ_0_0&gt; PersistenceController - &gt;数组&lt;τ_0_0&gt;')

  3. 我无法理解,问题是什么。

0 个答案:

没有答案