Skip to content

Latest commit

 

History

History
35 lines (28 loc) · 711 Bytes

README.md

File metadata and controls

35 lines (28 loc) · 711 Bytes

RxConcurrency

A small set of extensions that allow to combine new swift concurrency with RxSwift.

This package is actively under development. I appreciate any code improvements or new features.

import RxSwift
import RxConcurrency

// Flatmap async function
Observable
    .from([1, 2, 3, 4])
    .flatMap { (id) async throws -> Item  in
        try await ApiClient.fetch(id: id)
    }
    .subscribe { item in 
        print(item)
    }

// Observable from async function
Observable<String>
    .async {
        try await ApiClient.request(id: 1)
    }
    .subscribe { item in 
        print(item)
    }

Supported async operator

  1. flatMap
  2. flatMapFirst
  3. flatMapLatest