CoolFace
Datasetpublic

basant307/AI_Governance_Project

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes48downloads
_createPartial.js44 linesDownload Raw Back to lodash-es
1import apply from './_apply.js';2import createCtor from './_createCtor.js';3import root from './_root.js';4 5/** Used to compose bitmasks for function metadata. */6var WRAP_BIND_FLAG = 1;7 8/**9 * Creates a function that wraps `func` to invoke it with the `this` binding10 * of `thisArg` and `partials` prepended to the arguments it receives.11 *12 * @private13 * @param {Function} func The function to wrap.14 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.15 * @param {*} thisArg The `this` binding of `func`.16 * @param {Array} partials The arguments to prepend to those provided to17 *  the new function.18 * @returns {Function} Returns the new wrapped function.19 */20function createPartial(func, bitmask, thisArg, partials) {21  var isBind = bitmask & WRAP_BIND_FLAG,22      Ctor = createCtor(func);23 24  function wrapper() {25    var argsIndex = -1,26        argsLength = arguments.length,27        leftIndex = -1,28        leftLength = partials.length,29        args = Array(leftLength + argsLength),30        fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;31 32    while (++leftIndex < leftLength) {33      args[leftIndex] = partials[leftIndex];34    }35    while (argsLength--) {36      args[leftIndex++] = arguments[++argsIndex];37    }38    return apply(fn, isBind ? thisArg : this, args);39  }40  return wrapper;41}42 43export default createPartial;44 
basant307/AI_Governance_Project · CoolFace