Instance Method
mapEachFlat(_:)
Gets the collection value of a key path for each element in the sequence that is wrapped by an
EventLoopFuture, combining the results into a single result collection.func mapEachFlat<ResultSegment>(_ keyPath: KeyPath<Value.Element, ResultSegment>) -> EventLoopFuture<[ResultSegment.Element]> where ResultSegment : Sequence
Parameters
keyPathThe key path to access on each element in the sequence.
Return Value
A new EventLoopFuture that wraps the flattened sequence of transformed elements.
Discussion
let collection = eventLoop.future(["ABC", "👩👩👧👧"])
let flat = collection.mapEachFlat(\.utf8CString)
// flat: [65, 66, 67, 0, -16, -97, -111, -87, -30, -128, -115, -16, -97, -111, -87, -30,
// -128, -115, -16, -97, -111, -89, -30, -128, -115, -16, -97, -111, -89, 0]
See Also
EventLoopFuture
EventLoopFutureQueueAllows you to queue closures that produce anEventLoopFuture, so each future only gets run if the previous ones complete, succeed, or fail.mapEach(_:)Gets the value of a key path for each element in the sequence that is wrapped by anEventLoopFuture.mapEach(_:)Calls a closure on each element in the sequence that is wrapped by anEventLoopFuture.mapEachCompact(_:)Gets the optional value of a key path for each element in the sequence that is wrapped by anEventLoopFuture.mapEachCompact(_:)Calls a closure, which returns anOptional, on each element in the sequence that is wrapped by anEventLoopFuture.mapEachFlat(_:)Calls a closure which returns a collection on each element in the sequence that is wrapped by anEventLoopFuture, combining the results into a single result collection.flatMapEach(on:_:)Calls a closure, which returns anEventLoopFuture, on each element in a sequence that is wrapped by anEventLoopFuture. No results from each future are expected.flatMapEach(on:_:)Calls a closure, which returns anEventLoopFuture, on each element in a sequence that is wrapped by anEventLoopFuture.flatMapEachCompact(on:_:)Calls a closure, which returns anEventLoopFuture<Optional>, on each element in a sequence that is wrapped by anEventLoopFuture.flatMapEachThrowing(_:)Calls a closure on each element in the sequence that is wrapped by anEventLoopFuture.flatMapEachCompactThrowing(_:)Calls a closure, which returns anOptional, on each element in the sequence that is wrapped by anEventLoopFuture.sequencedFlatMapEach(_:)An overload ofsequencedFlatMapEach(_:)which returns aVoidfuture instead of[Void]when the result type of the transform closure isVoid.sequencedFlatMapEach(_:)A variant form offlatMapEach(on:_:)which guarantees:sequencedFlatMapEachCompact(_:)Variant ofsequencedFlatMapEach(_:)which providescompactMap()semantics by allowing result values to benil. Such results are not included in the output array.whenTheySucceed(_:_:file:line:)Returns a newEventLoopFuturethat succeeds only if all of the provided fs succeed. The newEventLoopFuturewill contain all of the values fulfilled by the fs.