iter-tools-es
Version:
The iterable toolbox
17 lines (14 loc) • 394 B
JavaScript
const {
asyncIterableCurry
} = require('../../internal/async-iterable.js');
async function* __asyncFilter(source, predicate) {
let c = 0;
for await (const value of source) {
if (await predicate(value, c++)) {
yield value;
}
}
}
exports.__asyncFilter = __asyncFilter;
const asyncFilter = /*#__PURE__*/asyncIterableCurry(__asyncFilter);
exports.asyncFilter = asyncFilter;