1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
//// [tests/cases/compiler/emitSkipsThisWithRestParameter.ts] ////
//// [emitSkipsThisWithRestParameter.ts]
function rebase(fn: (base: any, ...args: any[]) => any): (...args: any[]) => any {
return function(this: any, ...args: any[]) {
return fn.apply(this, [ this ].concat(args));
};
}
//// [emitSkipsThisWithRestParameter.js]
function rebase(fn) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return fn.apply(this, [this].concat(args));
};
}
|