UNPKG

p-forever

Version:

Run promise-returning & async functions repeatedly until you end it

16 lines (10 loc) 295 B
const endSymbol = Symbol('pForever.end'); const pForever = async (function_, previousValue) => { const newValue = await function_(await previousValue); if (newValue === endSymbol) { return; } return pForever(function_, newValue); }; pForever.end = endSymbol; export default pForever;