PageRenderTime 20ms CodeModel.GetById 12ms app.highlight 4ms RepoModel.GetById 1ms app.codeStats 0ms

/node_modules/lodash/assignIn.js

https://bitbucket.org/coleman333/smartsite
JavaScript | 40 lines | 7 code | 2 blank | 31 comment | 0 complexity | c7984c8dd0edfa4dcd7c98c6787b5b68 MD5 | raw file
 1var copyObject = require('./_copyObject'),
 2    createAssigner = require('./_createAssigner'),
 3    keysIn = require('./keysIn');
 4
 5/**
 6 * This method is like `_.assign` except that it iterates over own and
 7 * inherited source properties.
 8 *
 9 * **Note:** This method mutates `object`.
10 *
11 * @static
12 * @memberOf _
13 * @since 4.0.0
14 * @alias extend
15 * @category Object
16 * @param {Object} object The destination object.
17 * @param {...Object} [sources] The source objects.
18 * @returns {Object} Returns `object`.
19 * @see _.assign
20 * @example
21 *
22 * function Foo() {
23 *   this.a = 1;
24 * }
25 *
26 * function Bar() {
27 *   this.c = 3;
28 * }
29 *
30 * Foo.prototype.b = 2;
31 * Bar.prototype.d = 4;
32 *
33 * _.assignIn({ 'a': 0 }, new Foo, new Bar);
34 * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }
35 */
36var assignIn = createAssigner(function(object, source) {
37  copyObject(source, keysIn(source), object);
38});
39
40module.exports = assignIn;