Skip to content

Instantly share code, notes, and snippets.

@robertmryan
Created August 12, 2019 05:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save robertmryan/d2bd9e686d6532ae4d89a06a3aaea0d8 to your computer and use it in GitHub Desktop.
Save robertmryan/d2bd9e686d6532ae4d89a06a3aaea0d8 to your computer and use it in GitHub Desktop.
func getAllData() -> AnyPublisher<[MyData], Error> {
getIDs().flatMap { ids -> AnyPublisher<[MyData], Error> in
let publishers = ids.map { self.getData(with: $0) }
return Publishers.Sequence<[AnyPublisher<MyData, Error>], Error>(sequence: publishers)
.flatMap { $0 }
.collect()
.eraseToAnyPublisher()
}.eraseToAnyPublisher()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment