1234567891011121314 |
- var global = require('../internals/global');
- var call = require('../internals/function-call');
- var aCallable = require('../internals/a-callable');
- var anObject = require('../internals/an-object');
- var tryToString = require('../internals/try-to-string');
- var getIteratorMethod = require('../internals/get-iterator-method');
- var TypeError = global.TypeError;
- module.exports = function (argument, usingIterator) {
- var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;
- if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));
- throw TypeError(tryToString(argument) + ' is not iterable');
- };
|