Revert "babel-types: add Binary alias to AssignmentExpression definition (fixes T6887)"

This was causing problems with parenthesizing assignment expression
This reverts commit b5cf529d6b342b3dd8dd49c50cc9cd5fed4fc5a7.
This commit is contained in:
Amjad Masad 2016-01-06 15:59:39 -08:00
parent 7918b9028b
commit 6abee425d3
3 changed files with 4 additions and 6 deletions

View File

@ -155,10 +155,8 @@ export function AssignmentPattern(node: Object) {
export function AssignmentExpression(node: Object, parent: Object) {
// Somewhere inside a for statement `init` node but doesn't usually
// needs a paren except for `in` expressions: `for (a in b ? a : b;;)`
// and for `ObjectPattern`: `({ f } = { f: 2 };`
let parens = this._inForStatementInit && node.operator === "in" &&
!n.needsParens(node, parent) ||
t.isObjectPattern(node.left);
!n.needsParens(node, parent);
if (parens) {
this.push("(");

View File

@ -66,7 +66,7 @@ export function Binary(node: Object, parent: Object): boolean {
return true;
}
if (t.isBinary(parent) && !t.isAssignmentExpression(parent)) {
if (t.isBinary(parent)) {
let parentOp = parent.operator;
let parentPos = PRECEDENCE[parentOp];
@ -216,7 +216,7 @@ export function ConditionalExpression(node: Object, parent: Object): boolean {
return true;
}
if (t.isBinary(parent) && !t.isAssignmentExpression(parent)) {
if (t.isBinary(parent)) {
return true;
}

View File

@ -42,7 +42,7 @@ defineType("AssignmentExpression", {
},
builder: ["operator", "left", "right"],
visitor: ["left", "right"],
aliases: ["Binary", "Expression"]
aliases: ["Expression"]
});
defineType("BinaryExpression", {