我正试图让一个特定的字典类型符合协议。
typealias FirebaseDictionary = Dictionary<String, FirebaseValue>
我想要符合一个
FirebaseValue
协议protocol FirebaseValue {
// stuff here
}
我试过这个
extension FirebaseDictionary: FirebaseValue {
}
但我得到了一个错误。所以我现在有了这个
extension Dictionary where Key == String, Value == FirebaseValue {
}
但如果可能的话,我无法找到使其符合协议的正确语法。如果不可能,有没有其他方法达到同样的效果?我试图只允许特定类型进入一个属性,并且能够轻松地识别它们在读回时是什么类型。
This question was asked但是没有给出明确的答案,而且不管怎样,它可能已经改变了。
最佳答案
由于Swift 4.2,您可以使用以下工具进行此操作:
extension Dictionary : FirebaseValue where Key == String, Value == FirebaseValue {
}