diff options
| author | Pinapelz <yukais@pinapelz.com> | 2025-06-28 17:26:46 -0700 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2025-06-28 17:43:56 -0700 |
| commit | e4fa1e69e7ebfb627c7198fd1a9881e9327ec4d4 (patch) | |
| tree | 06284a538a6008eca75051399e47db4e5d50301c /node_modules/rxjs/dist/esm/internal/observable/generate.js | |
initial commit: scaffolding
Diffstat (limited to 'node_modules/rxjs/dist/esm/internal/observable/generate.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm/internal/observable/generate.js | 38 |
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 |
