1 var toArray = require('./toArray');
4 * Gets the next value on a wrapped object following the
5 * [iterator protocol](https://mdn.io/iteration_protocols#iterator).
10 * @returns {Object} Returns the next iterator value.
13 * var wrapped = _([1, 2]);
16 * // => { 'done': false, 'value': 1 }
19 * // => { 'done': false, 'value': 2 }
22 * // => { 'done': true, 'value': undefined }
24 function wrapperNext() {
25 if (this.__values__ === undefined) {
26 this.__values__ = toArray(this.value());
28 var done = this.__index__ >= this.__values__.length,
29 value = done ? undefined : this.__values__[this.__index__++];
31 return { 'done': done, 'value': value };
34 module.exports = wrapperNext;