1 // optional / simple context binding
2 var aFunction = require('./_a-function');
3 module.exports = function(fn, that, length){
5 if(that === undefined)return fn;
7 case 1: return function(a){
8 return fn.call(that, a);
10 case 2: return function(a, b){
11 return fn.call(that, a, b);
13 case 3: return function(a, b, c){
14 return fn.call(that, a, b, c);
17 return function(/* ...args */){
18 return fn.apply(that, arguments);