Blame view

node_modules/stylus/lib/functions/merge.js 610 Bytes
ce4c83ff   wxy   初始提交
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  var utils = require('../utils');
  
  /**
   * Merge the object `dest` with the given args.
   *
   * @param {Object} dest
   * @param {Object} ...
   * @return {Object} dest
   * @api public
   */
  
  (module.exports = function merge(dest){
    utils.assertPresent(dest, 'dest');
    dest = utils.unwrap(dest).first;
    utils.assertType(dest, 'object', 'dest');
  
    var last = utils.unwrap(arguments[arguments.length - 1]).first
      , deep = (true === last.val);
  
    for (var i = 1, len = arguments.length - deep; i < len; ++i) {
      utils.merge(dest.vals, utils.unwrap(arguments[i]).first.vals, deep);
    }
    return dest;
  }).raw = true;