aboutsummaryrefslogtreecommitdiff
path: root/node_modules/core-js/modules/_ctx.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/core-js/modules/_ctx.js')
-rw-r--r--node_modules/core-js/modules/_ctx.js20
1 files changed, 20 insertions, 0 deletions
diff --git a/node_modules/core-js/modules/_ctx.js b/node_modules/core-js/modules/_ctx.js
new file mode 100644
index 00000000..0a100ff3
--- /dev/null
+++ b/node_modules/core-js/modules/_ctx.js
@@ -0,0 +1,20 @@
+// optional / simple context binding
+var aFunction = require('./_a-function');
+module.exports = function (fn, that, length) {
+ aFunction(fn);
+ if (that === undefined) return fn;
+ switch (length) {
+ case 1: return function (a) {
+ return fn.call(that, a);
+ };
+ case 2: return function (a, b) {
+ return fn.call(that, a, b);
+ };
+ case 3: return function (a, b, c) {
+ return fn.call(that, a, b, c);
+ };
+ }
+ return function (/* ...args */) {
+ return fn.apply(that, arguments);
+ };
+};