hugoWebsite/node_modules/rxjs/dist/esm5/internal/observable/range.js

35 lines
1004 B
JavaScript

import { Observable } from '../Observable';
import { EMPTY } from './empty';
export function range(start, count, scheduler) {
if (count == null) {
count = start;
start = 0;
}
if (count <= 0) {
return EMPTY;
}
var end = count + start;
return new Observable(scheduler
?
function (subscriber) {
var n = start;
return scheduler.schedule(function () {
if (n < end) {
subscriber.next(n++);
this.schedule();
}
else {
subscriber.complete();
}
});
}
:
function (subscriber) {
var n = start;
while (n < end && !subscriber.closed) {
subscriber.next(n++);
}
subscriber.complete();
});
}
//# sourceMappingURL=range.js.map