From 941474983dc643d53c3dbf216b61f7cfd1c7b385 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Mon, 11 May 2015 22:34:08 +0100 Subject: [PATCH] clean up es6.objectSuper transformer - fixes #1502 --- .../transformers/es6/object-super.js | 27 ++++++------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/src/babel/transformation/transformers/es6/object-super.js b/src/babel/transformation/transformers/es6/object-super.js index 10d01e09f8..64e461c312 100644 --- a/src/babel/transformation/transformers/es6/object-super.js +++ b/src/babel/transformation/transformers/es6/object-super.js @@ -2,30 +2,19 @@ import ReplaceSupers from "../../helpers/replace-supers"; import * as t from "../../../types"; function Property(path, node, scope, getObjectRef, file) { - if (!node.method) return; - - var value = node.value; - var thisExpr = scope.generateUidIdentifier("this"); + if (!node.method && node.kind === "init") return; + if (!t.isFunction(node.value)) return; var replaceSupers = new ReplaceSupers({ - topLevelThisReference: thisExpr, - getObjectRef: getObjectRef, - methodNode: node, - methodPath: path, - isStatic: true, - scope: scope, - file: file + getObjectRef: getObjectRef, + methodNode: node, + methodPath: path, + isStatic: true, + scope: scope, + file: file }); replaceSupers.replace(); - - if (replaceSupers.hasSuper) { - value.body.body.unshift( - t.variableDeclaration("var", [ - t.variableDeclarator(thisExpr, t.thisExpression()) - ]) - ); - } } export function ObjectExpression(node, parent, scope, file) {