Simplify rest transformation

This commit is contained in:
Victor Felder 2015-12-14 11:30:01 +01:00
parent 31032ee7ad
commit 3dfb4eb8c6
3 changed files with 13 additions and 13 deletions

View File

@ -12,7 +12,7 @@ let buildRest = template(`
`);
let loadRest = template(`
ARGUMENTS.length <= KEY || ARGUMENTS[KEY] === undefined ? undefined : ARGUMENTS[KEY]
ARGUMENTS.length <= INDEX ? undefined : ARGUMENTS[INDEX]
`);
let memberExpressionOptimisationVisitor = {
@ -124,7 +124,7 @@ export let visitor = {
if (t.isReturnStatement(parentPath.parent) || t.isIdentifier(parentPath.parent.id)) {
parentPath.replaceWith(loadRest({
ARGUMENTS: argsId,
KEY: t.numericLiteral(parent.property.value + offset)
INDEX: t.numericLiteral(parent.property.value + offset)
}));
} else {
if (offset === 0) return;

View File

@ -1,21 +1,21 @@
var concat = function () {
var x = arguments.length <= 0 || arguments[0] === undefined ? undefined : arguments[0];
var y = arguments.length <= 1 || arguments[1] === undefined ? undefined : arguments[1];
var x = arguments.length <= 0 ? undefined : arguments[0];
var y = arguments.length <= 1 ? undefined : arguments[1];
};
var somefun = function () {
var get2ndArg = function (a, b) {
var _b = arguments.length <= 2 || arguments[2] === undefined ? undefined : arguments[2];
var _b = arguments.length <= 2 ? undefined : arguments[2];
var somef = function (x, y, z) {
var _a = arguments.length <= 3 || arguments[3] === undefined ? undefined : arguments[3];
var _a = arguments.length <= 3 ? undefined : arguments[3];
};
var somefg = function (c, d, e, f) {
var _a = arguments.length <= 4 || arguments[4] === undefined ? undefined : arguments[4];
var _a = arguments.length <= 4 ? undefined : arguments[4];
};
var _d = arguments.length <= 3 || arguments[3] === undefined ? undefined : arguments[3];
var _d = arguments.length <= 3 ? undefined : arguments[3];
};
var get3rdArg = function () {
return arguments.length <= 2 || arguments[2] === undefined ? undefined : arguments[2];
return arguments.length <= 2 ? undefined : arguments[2];
};
};

View File

@ -1,11 +1,11 @@
var t = function () {
var x = arguments.length <= 0 || arguments[0] === undefined ? undefined : arguments[0];
var y = arguments.length <= 1 || arguments[1] === undefined ? undefined : arguments[1];
var x = arguments.length <= 0 ? undefined : arguments[0];
var y = arguments.length <= 1 ? undefined : arguments[1];
};
function t() {
var x = arguments.length <= 0 || arguments[0] === undefined ? undefined : arguments[0];
var y = arguments.length <= 1 || arguments[1] === undefined ? undefined : arguments[1];
var x = arguments.length <= 0 ? undefined : arguments[0];
var y = arguments.length <= 1 ? undefined : arguments[1];
}
function t() {