我可以从 rxSwift map-Function 引发错误吗

Can I raise an Error from rxSwift map-Function

我可以从 map 函数中引发错误还是需要使用 flatMap?该错误应该报告给 onError。在 RxJava 中,我可以简单地抛出一个异常。 我该如何执行以下(伪)代码

observable.map( value -> {if (value.isIllegal) raiseError else return value.count})

显然可以使用平面地图,但我正在寻找地图解决方案。

在 RxSwift 中以同样的方式工作 -

        enum MyError: Error {
            case myError
        }

        Observable
            .from([1,2,3])
            .map { (element) -> Int in
                throw MyError.myError
            }
            .subscribe { event in
                os_log("%@", "\(event)")
            }
            .disposed(by: self.disposeBag)