Sha256: b4dfae49d8f207be55820e389cafe14962116d9a255599370d0a1e9f3bb1abef
Contents?: true
Size: 873 Bytes
Versions: 62
Compression:
Stored size: 873 Bytes
Contents
/* */ var ctx = require('./$.ctx'), call = require('./$.iter-call'), isArrayIter = require('./$.is-array-iter'), anObject = require('./$.an-object'), toLength = require('./$.to-length'), getIterFn = require('./core.get-iterator-method'); module.exports = function(iterable, entries, fn, that) { var iterFn = getIterFn(iterable), f = ctx(fn, that, entries ? 2 : 1), index = 0, length, step, iterator; if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!'); if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) { entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]); } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done; ) { call(iterator, f, step.value, entries); } };
Version data entries
62 entries across 31 versions & 1 rubygems