Security update for permissions_by_term
[yaffs-website] / node_modules / uncss / node_modules / lodash / wrapperReverse.js
1 var LazyWrapper = require('./internal/LazyWrapper'),
2     LodashWrapper = require('./internal/LodashWrapper'),
3     reverse = require('./reverse'),
4     thru = require('./thru');
5
6 /**
7  * This method is the wrapper version of `_.reverse`.
8  *
9  * **Note:** This method mutates the wrapped array.
10  *
11  * @name reverse
12  * @memberOf _
13  * @category Seq
14  * @returns {Object} Returns the new `lodash` wrapper instance.
15  * @example
16  *
17  * var array = [1, 2, 3];
18  *
19  * _(array).reverse().value()
20  * // => [3, 2, 1]
21  *
22  * console.log(array);
23  * // => [3, 2, 1]
24  */
25 function wrapperReverse() {
26   var value = this.__wrapped__;
27   if (value instanceof LazyWrapper) {
28     var wrapped = value;
29     if (this.__actions__.length) {
30       wrapped = new LazyWrapper(this);
31     }
32     wrapped = wrapped.reverse();
33     wrapped.__actions__.push({ 'func': thru, 'args': [reverse], 'thisArg': undefined });
34     return new LodashWrapper(wrapped, this.__chain__);
35   }
36   return this.thru(reverse);
37 }
38
39 module.exports = wrapperReverse;