diff options
Diffstat (limited to 'deps/npm/node_modules/cli-table2/node_modules/lodash/utility/methodOf.js')
-rw-r--r-- | deps/npm/node_modules/cli-table2/node_modules/lodash/utility/methodOf.js | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/deps/npm/node_modules/cli-table2/node_modules/lodash/utility/methodOf.js b/deps/npm/node_modules/cli-table2/node_modules/lodash/utility/methodOf.js new file mode 100644 index 0000000000..f61b782272 --- /dev/null +++ b/deps/npm/node_modules/cli-table2/node_modules/lodash/utility/methodOf.js @@ -0,0 +1,32 @@ +var invokePath = require('../internal/invokePath'), + restParam = require('../function/restParam'); + +/** + * The opposite of `_.method`; this method creates a function that invokes + * the method at a given path on `object`. Any additional arguments are + * provided to the invoked method. + * + * @static + * @memberOf _ + * @category Utility + * @param {Object} object The object to query. + * @param {...*} [args] The arguments to invoke the method with. + * @returns {Function} Returns the new function. + * @example + * + * var array = _.times(3, _.constant), + * object = { 'a': array, 'b': array, 'c': array }; + * + * _.map(['a[2]', 'c[0]'], _.methodOf(object)); + * // => [2, 0] + * + * _.map([['a', '2'], ['c', '0']], _.methodOf(object)); + * // => [2, 0] + */ +var methodOf = restParam(function(object, args) { + return function(path) { + return invokePath(object, path, args); + }; +}); + +module.exports = methodOf; |