Sha256: 79b9c1b5811ea1d6be75314cc99f5bfb1791548e10d3d01a7e0163c34423140d

Contents?: true

Size: 1023 Bytes

Versions: 262

Compression:

Stored size: 1023 Bytes

Contents

var createWrap = require('./_createWrap'),
    flatRest = require('./_flatRest');

/** Used to compose bitmasks for function metadata. */
var WRAP_REARG_FLAG = 256;

/**
 * Creates a function that invokes `func` with arguments arranged according
 * to the specified `indexes` where the argument value at the first index is
 * provided as the first argument, the argument value at the second index is
 * provided as the second argument, and so on.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Function
 * @param {Function} func The function to rearrange arguments for.
 * @param {...(number|number[])} indexes The arranged argument indexes.
 * @returns {Function} Returns the new function.
 * @example
 *
 * var rearged = _.rearg(function(a, b, c) {
 *   return [a, b, c];
 * }, [2, 0, 1]);
 *
 * rearged('b', 'c', 'a')
 * // => ['a', 'b', 'c']
 */
var rearg = flatRest(function(func, indexes) {
  return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);
});

module.exports = rearg;

Version data entries

262 entries across 261 versions & 28 rubygems

Version Path
govuk_publishing_components-17.15.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.14.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.13.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.12.2 node_modules/lodash/rearg.js
govuk_publishing_components-17.12.1 node_modules/lodash/rearg.js
govuk_publishing_components-17.12.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.11.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.10.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.9.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.8.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.7.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.6.1 node_modules/lodash/rearg.js
govuk_publishing_components-17.6.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.5.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.4.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.3.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.2.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.1.1 node_modules/lodash/rearg.js
govuk_publishing_components-17.1.0 node_modules/lodash/rearg.js
govuk_publishing_components-17.0.0 node_modules/lodash/rearg.js