【发布时间】:2019-11-02 14:51:43
【问题描述】:
我想扩展泛型类型Array<Element>,对Element 施加一个约束,该约束依赖于另一个泛型类型,例如Element == Optional<Wrapped>。
在Element不是泛型的情况下,很简单:
extension Array where Element == String {
func merge() -> String { ... }
}
我尝试了以下,但编译器不接受它。
extension Array<Wrapped> where Element == Optional<Wrapped> {
func merge() -> Optional<Wrapped> { ... }
}
在这种情况下我应该使用什么语法? 提前致谢!
【问题讨论】:
标签: swift generics class-extensions