Initial commit
[yaffs-website] / node_modules / node-sass / node_modules / lodash / wrapperReverse.js
1 var LazyWrapper = require('./_LazyWrapper'),
2     LodashWrapper = require('./_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  * @since 0.1.0
14  * @category Seq
15  * @returns {Object} Returns the new `lodash` wrapper instance.
16  * @example
17  *
18  * var array = [1, 2, 3];
19  *
20  * _(array).reverse().value()
21  * // => [3, 2, 1]
22  *
23  * console.log(array);
24  * // => [3, 2, 1]
25  */
26 function wrapperReverse() {
27   var value = this.__wrapped__;
28   if (value instanceof LazyWrapper) {
29     var wrapped = value;
30     if (this.__actions__.length) {
31       wrapped = new LazyWrapper(this);
32     }
33     wrapped = wrapped.reverse();
34     wrapped.__actions__.push({
35       'func': thru,
36       'args': [reverse],
37       'thisArg': undefined
38     });
39     return new LodashWrapper(wrapped, this.__chain__);
40   }
41   return this.thru(reverse);
42 }
43
44 module.exports = wrapperReverse;