1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
| import { Observable } from '../Observable';
| export function range(start = 0, count, scheduler) {
| return new Observable(subscriber => {
| if (count === undefined) {
| count = start;
| start = 0;
| }
| let index = 0;
| let current = start;
| if (scheduler) {
| return scheduler.schedule(dispatch, 0, {
| index, count, start, subscriber
| });
| }
| else {
| do {
| if (index++ >= count) {
| subscriber.complete();
| break;
| }
| subscriber.next(current++);
| if (subscriber.closed) {
| break;
| }
| } while (true);
| }
| return undefined;
| });
| }
| export function dispatch(state) {
| const { start, index, count, subscriber } = state;
| if (index >= count) {
| subscriber.complete();
| return;
| }
| subscriber.next(start);
| if (subscriber.closed) {
| return;
| }
| state.index = index + 1;
| state.start = start + 1;
| this.schedule(state);
| }
| //# sourceMappingURL=range.js.map
|
|