public func
do(onNext: ((E) throws -> Void)? = nil,
do
はthrowできないのでそれ用のdo
を自分で書いて、でも同名で振る舞いが違うなって思ったのでした。extension EventLoopFuture { public func `do`(_ callback: @escaping (T) throws -> Void) throws -> EventLoopFuture<T> { return map(to: T.self) { t in try callback(t) return t } } }