var anObject = require('../internals/an-object'); var getIteratorMethod = require('../internals/get-iterator-method'); module.exports = function (it, usingIterator) { var iteratorMethod = arguments.length < 2 ? getIteratorMethod(it) : usingIterator; if (typeof iteratorMethod != 'function') { throw TypeError(String(it) + ' is not iterable'); } return anObject(iteratorMethod.call(it)); };