Я пытаюсь создать Rx-оператор, который работает с массивами. Я пробовал это простое расширение:
extension ObservableType where Element == Array<Any> {
func beat<U>(_ beat: Observable<U>) -> Observable<Element.Element> {
let lhs = self.flatMap { Observable.from($0) }
return Observable.zip(lhs, beat).map { $0.0 }
}
}
Теперь я отметил Array<Any>
, потому что в противном случае я получаю Reference to generic type 'Array' requires arguments in <...>
, но в этом случае возвращаемое значение конечно Observable<Any>
.
Возможно ли даже вернуть наблюдаемое с фактическим Element
массива?