| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | var baseLodash = require('./_baseLodash'),    wrapperClone = require('./_wrapperClone');/** * Creates a clone of the chain sequence planting `value` as the wrapped value. * * @name plant * @memberOf _ * @since 3.2.0 * @category Seq * @param {*} value The value to plant. * @returns {Object} Returns the new `lodash` wrapper instance. * @example * * function square(n) { *   return n * n; * } * * var wrapped = _([1, 2]).map(square); * var other = wrapped.plant([3, 4]); * * other.value(); * // => [9, 16] * * wrapped.value(); * // => [1, 4] */function wrapperPlant(value) {  var result,      parent = this;  while (parent instanceof baseLodash) {    var clone = wrapperClone(parent);    clone.__index__ = 0;    clone.__values__ = undefined;    if (result) {      previous.__wrapped__ = clone;    } else {      result = clone;    }    var previous = clone;    parent = parent.__wrapped__;  }  previous.__wrapped__ = value;  return result;}module.exports = wrapperPlant;
 |