Collects up to the specified number of elements, and then emits a single array of the collection.
SDKs
- iOS 13.0+
- macOS 10.15+
- Mac Catalyst 13.0+
- tvOS 13.0+
- watchOS 6.0+
- Xcode 11.0+
Framework
- Combine
Declaration
func collect(_ count: Int) -> Publishers.Collect By Count<Publishers.Map<Upstream, Output>>
Parameters
count
The maximum number of received elements to buffer before publishing.
Return Value
A publisher that collects up to the specified number of elements, and then publishes them as an array.
Discussion
If the upstream publisher finishes before filling the buffer, this publisher sends an array of all the items it has received. This may be fewer than count
elements. If the upstream publisher fails with an error, this publisher forwards the error to the downstream receiver instead of sending its output. Note: When this publisher receives a request for .max(n)
elements, it requests .max(count * n)
from the upstream publisher.