Avatar
こんなかんじかな extension ObservableType { static func from<U>(_ f: @escaping (Self.E) throws -> U) -> ((Self.E) -> Observable<U>) { return { (e: E) in do { let u = try f(e) return Observable.just(u) } catch(let e) { return Observable.error(e) } } } }
8:41 AM
お、retry実は使ったことないので探ってみます
8:45 AM
ここまであったほうがいいか extension ObservableType { static func from<U>(_ f: @escaping (Self.E) throws -> U, catch: (Error) -> U) -> ((Self.E) -> Observable<U>) { return { (e: E) in do { let u = try f(e) return Observable.just(u) } catch(let e) { return Observable.just(catch(e)) } } } }