12345678910111213141516171819202122232425262728293031 |
- import { Observable } from '../Observable';
- import { iterator as Symbol_iterator } from '../symbol/iterator';
- import { isFunction } from '../util/isFunction';
- import { executeSchedule } from '../util/executeSchedule';
- export function scheduleIterable(input, scheduler) {
- return new Observable((subscriber) => {
- let iterator;
- executeSchedule(subscriber, scheduler, () => {
- iterator = input[Symbol_iterator]();
- executeSchedule(subscriber, scheduler, () => {
- let value;
- let done;
- try {
- ({ value, done } = iterator.next());
- }
- catch (err) {
- subscriber.error(err);
- return;
- }
- if (done) {
- subscriber.complete();
- }
- else {
- subscriber.next(value);
- }
- }, 0, true);
- });
- return () => isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return();
- });
- }
- //# sourceMappingURL=scheduleIterable.js.map
|