![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/vreg/node_modules/core-js/modules/ |
'use strict'; // https://github.com/tc39/proposal-iterator-helpers var $ = require('../internals/export'); var aFunction = require('../internals/a-function'); var anObject = require('../internals/an-object'); var getIteratorMethod = require('../internals/get-iterator-method'); var createIteratorProxy = require('../internals/iterator-create-proxy'); var iteratorClose = require('../internals/iterator-close'); var IteratorProxy = createIteratorProxy(function () { var iterator = this.iterator; var mapper = this.mapper; var result, mapped, iteratorMethod, innerIterator; while (true) { try { if (innerIterator = this.innerIterator) { result = anObject(this.innerNext.call(innerIterator)); if (!result.done) return result.value; this.innerIterator = this.innerNext = null; } result = anObject(this.next.call(iterator)); if (this.done = !!result.done) return; mapped = mapper(result.value); iteratorMethod = getIteratorMethod(mapped); if (iteratorMethod === undefined) { throw TypeError('.flatMap callback should return an iterable object'); } this.innerIterator = innerIterator = anObject(iteratorMethod.call(mapped)); this.innerNext = aFunction(innerIterator.next); } catch (error) { iteratorClose(iterator, 'throw', error); } } }); $({ target: 'Iterator', proto: true, real: true }, { flatMap: function flatMap(mapper) { return new IteratorProxy({ iterator: anObject(this), mapper: aFunction(mapper), innerIterator: null, innerNext: null }); } });