我想在Dictionary上添加一个扩展,它只适用于将字符串作为键和NSManagedObject数组作为值的字典
理想情况下,它看起来像这样:
extension Dictionary where Key : StringLiteralConvertible, Value: [NSManagedObject] {
或
extension Dictionary where Key : StringLiteralConvertible, Value: SequenceType<NSManagedObject> {
如果我只设置Value : NSManagedObject
,它就有效。但不是如果它是一个阵列。有没有人知道这个的解决方法?
答案 0 :(得分:0)
修改强>
好的,这奇怪地在Xcode 7.2的操场上工作......
extension Dictionary where Key: StringLiteralConvertible, Value: ArrayLiteralConvertible, Value.Element: NSManagedObject {
func hello() -> String {
return "World"
}
}
let a: [String: [NSManagedObject]] = [:]
a.hello()
<强> ORIGINAL:强>
我认为你可以试着像Swift那样专门研究Swift中的Array
类型:Array<NSManagedObject>
所以结果如下:
extension Dictionary where Key: StringLiteralConvertible, Value: Array<NSManagedObject> {