在泛型中添加可选约束是不可能的。但是,OptionalProtocol可以做到。
func unwrap<T: OptionalProtocol>(object: T) -> T.Wrapped
(object: T) 必须是 Optional
OptionalProtocol 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile:
pod "OptionalProtocol"
muukii,[email protected]
OptionalProtocol 可以在 MIT 许可证下获取。有关更多信息,请参阅 LICENSE 文件。