jjzjj

HashyStruct

全部标签

swift - 在 Swift 中隐藏 Hashable

如何在隐藏实现Hashable的具体类型的地方返回[Hashable:Any]?Swift有两种类型的协议(protocol):可以用作类型的协议(protocol)和只能用作类型约束的协议(protocol)。虽然这很强大,但也很不幸。这意味着某些类型的信息隐藏不是直接可能的。我能想到的唯一解决方案是使用thunk:structHash:Hashable{privateletvalue:Anyprivateletequals:Hash->Boolinit(_h:H){self.value=hself.hashValue=h.hashValueself.equals={($0.valu