diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-03 15:35:00 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-03 15:35:00 +0200 |
commit | de98e0b232509d5f40c135d540a70e415272ff85 (patch) | |
tree | a79222a5b58484ab3b80d18efcaaa7ccc4769b33 /node_modules/core-js/modules/$.partial.js | |
parent | e0c9d480a73fa629c1e4a47d3e721f1d2d345406 (diff) |
node_modules
Diffstat (limited to 'node_modules/core-js/modules/$.partial.js')
-rw-r--r-- | node_modules/core-js/modules/$.partial.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/$.partial.js b/node_modules/core-js/modules/$.partial.js new file mode 100644 index 000000000..53f97aa9c --- /dev/null +++ b/node_modules/core-js/modules/$.partial.js @@ -0,0 +1,24 @@ +'use strict'; +var path = require('./$.path') + , invoke = require('./$.invoke') + , aFunction = require('./$.a-function'); +module.exports = function(/* ...pargs */){ + var fn = aFunction(this) + , length = arguments.length + , pargs = Array(length) + , i = 0 + , _ = path._ + , holder = false; + while(length > i)if((pargs[i] = arguments[i++]) === _)holder = true; + return function(/* ...args */){ + var that = this + , $$ = arguments + , $$len = $$.length + , j = 0, k = 0, args; + if(!holder && !$$len)return invoke(fn, pargs, that); + args = pargs.slice(); + if(holder)for(;length > j; j++)if(args[j] === _)args[j] = $$[k++]; + while($$len > k)args.push($$[k++]); + return invoke(fn, args, that); + }; +};
\ No newline at end of file |