package eu.kanade.tachiyomi.util import android.util.Pair import rx.Observable import rx.subjects.PublishSubject class RxPager { private val results = PublishSubject.create>() private var requestedCount: Int = 0 fun results(): Observable>> { requestedCount = 0 return results.map { Pair(requestedCount++, it) } } fun request(networkObservable: (Int) -> Observable>) = networkObservable(requestedCount).doOnNext { results.onNext(it) } }