aboutsummaryrefslogtreecommitdiffstats
path: root/node_modules/rxjs/dist/esm/internal/observable/generate.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/rxjs/dist/esm/internal/observable/generate.js')
-rw-r--r--node_modules/rxjs/dist/esm/internal/observable/generate.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/node_modules/rxjs/dist/esm/internal/observable/generate.js b/node_modules/rxjs/dist/esm/internal/observable/generate.js
new file mode 100644
index 0000000..4d709c7
--- /dev/null
+++ b/node_modules/rxjs/dist/esm/internal/observable/generate.js
@@ -0,0 +1,38 @@
+import { identity } from '../util/identity';
+import { isScheduler } from '../util/isScheduler';
+import { defer } from './defer';
+import { scheduleIterable } from '../scheduled/scheduleIterable';
+export function generate(initialStateOrOptions, condition, iterate, resultSelectorOrScheduler, scheduler) {
+ let resultSelector;
+ let initialState;
+ if (arguments.length === 1) {
+ ({
+ initialState,
+ condition,
+ iterate,
+ resultSelector = identity,
+ scheduler,
+ } = initialStateOrOptions);
+ }
+ else {
+ initialState = initialStateOrOptions;
+ if (!resultSelectorOrScheduler || isScheduler(resultSelectorOrScheduler)) {
+ resultSelector = identity;
+ scheduler = resultSelectorOrScheduler;
+ }
+ else {
+ resultSelector = resultSelectorOrScheduler;
+ }
+ }
+ function* gen() {
+ for (let state = initialState; !condition || condition(state); state = iterate(state)) {
+ yield resultSelector(state);
+ }
+ }
+ return defer((scheduler
+ ?
+ () => scheduleIterable(gen(), scheduler)
+ :
+ gen));
+}
+//# sourceMappingURL=generate.js.map \ No newline at end of file
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage