在Swift中,我们可以对诸如序列等泛型项编写扩展:
extension Sequence where Iterator.Element : ObservableType {
}
这将确保扩展仅适用于(RxSwift)可观察序列的序列。
然而,如果元素约束是另一个泛型,那么你可以限制该泛型吗?例如:
extension Sequence where Iterator.Element : ObservableType where E : MyType {
}
在上述伪代码(不起作用)中,意图是说:
此扩展应适用于 Observable 序列,其中 Observable 是 MyType 类型的 Observable,例如 [Observable]。