From e4044062c39c839972ecc83294c48f3df2abdbe1 Mon Sep 17 00:00:00 2001 From: Jesse McCarthy Date: Mon, 11 Jan 2016 13:08:58 -0500 Subject: [PATCH] Remove unnecessary `length` check & nesting. --- .../src/rest.js | 24 +++++++++---------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/packages/babel-plugin-transform-es2015-parameters/src/rest.js b/packages/babel-plugin-transform-es2015-parameters/src/rest.js index 30eef962c3..dd81839573 100644 --- a/packages/babel-plugin-transform-es2015-parameters/src/rest.js +++ b/packages/babel-plugin-transform-es2015-parameters/src/rest.js @@ -171,20 +171,18 @@ export let visitor = { path.traverse(memberExpressionOptimisationVisitor, state); + // There are only "shorthand" references if (!state.deopted && !state.references.length) { - // we only have shorthands and there are no other references - if (state.candidates.length) { - for (let {path, cause} of (state.candidates: Array)) { - switch (cause) { - case "indexGetter": - optimiseIndexGetter(path, argsId, state.offset); - break; - case "lengthGetter": - optimiseLengthGetter(path, argsLengthExpression, argsId, state.offset); - break; - default: - path.replaceWith(argsId); - } + for (let {path, cause} of (state.candidates: Array)) { + switch (cause) { + case "indexGetter": + optimiseIndexGetter(path, argsId, state.offset); + break; + case "lengthGetter": + optimiseLengthGetter(path, argsLengthExpression, argsId, state.offset); + break; + default: + path.replaceWith(argsId); } } return;