iter-tools-es
Version:
The iterable toolbox
22 lines (18 loc) • 570 B
JavaScript
const {
wrapWithIterableIterator
} = require('../../internal/iterable.js');
function* __arrayReverse(source) {
if (source == null) return;
for (let i = source.length - 1; i >= 0; i--) {
yield source[i];
}
}
exports.__arrayReverse = __arrayReverse;
const arrayReverse = /*#__PURE__*/wrapWithIterableIterator(__arrayReverse, {
validateArgs(args) {
if (!(Array.isArray(args[0]) || typeof args[0] === 'string' || args[0] == null)) {
throw new Error('arrayReverse only works arrays and strings');
}
}
});
exports.arrayReverse = arrayReverse;