forked from ard/ruoyi-api

zhangnaisong
2024-04-30 de54d81a33ad0c47b3b561d824cf6f0fb6343d82
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { Observable } from '../Observable';
import { SchedulerLike } from '../types';
import { subscribeToIterable } from '../util/subscribeToIterable';
import { scheduleIterable } from '../scheduled/scheduleIterable';
 
export function fromIterable<T>(input: Iterable<T>, scheduler?: SchedulerLike) {
  if (!input) {
    throw new Error('Iterable cannot be null');
  }
  if (!scheduler) {
    return new Observable<T>(subscribeToIterable(input));
  } else {
    return scheduleIterable(input, scheduler);
  }
}