Revert "Parenthesized expressions (#8025)"

This reverts commit dd8b700a2c.
This commit is contained in:
Justin Ridgewell
2019-02-23 04:48:05 -05:00
committed by Nicolò Ribaudo
parent 9f3457797f
commit fc1ea7f496
43 changed files with 65 additions and 1186 deletions

View File

@@ -162,12 +162,6 @@ export function assertSequenceExpression(
): void {
assert("SequenceExpression", node, opts);
}
export function assertParenthesizedExpression(
node: Object,
opts?: Object = {},
): void {
assert("ParenthesizedExpression", node, opts);
}
export function assertSwitchCase(node: Object, opts?: Object = {}): void {
assert("SwitchCase", node, opts);
}
@@ -660,6 +654,12 @@ export function assertJSXClosingFragment(
export function assertNoop(node: Object, opts?: Object = {}): void {
assert("Noop", node, opts);
}
export function assertParenthesizedExpression(
node: Object,
opts?: Object = {},
): void {
assert("ParenthesizedExpression", node, opts);
}
export function assertAwaitExpression(node: Object, opts?: Object = {}): void {
assert("AwaitExpression", node, opts);
}

View File

@@ -161,10 +161,6 @@ export function SequenceExpression(...args: Array<any>): Object {
return builder("SequenceExpression", ...args);
}
export { SequenceExpression as sequenceExpression };
export function ParenthesizedExpression(...args: Array<any>): Object {
return builder("ParenthesizedExpression", ...args);
}
export { ParenthesizedExpression as parenthesizedExpression };
export function SwitchCase(...args: Array<any>): Object {
return builder("SwitchCase", ...args);
}
@@ -596,6 +592,10 @@ export function Noop(...args: Array<any>): Object {
return builder("Noop", ...args);
}
export { Noop as noop };
export function ParenthesizedExpression(...args: Array<any>): Object {
return builder("ParenthesizedExpression", ...args);
}
export { ParenthesizedExpression as parenthesizedExpression };
export function AwaitExpression(...args: Array<any>): Object {
return builder("AwaitExpression", ...args);
}

View File

@@ -731,16 +731,6 @@ defineType("SequenceExpression", {
aliases: ["Expression"],
});
defineType("ParenthesizedExpression", {
visitor: ["expression"],
aliases: ["Expression", "ExpressionWrapper"],
fields: {
expression: {
validate: assertNodeType("Expression"),
},
},
});
defineType("SwitchCase", {
visitor: ["test", "consequent"],
fields: {

View File

@@ -1,6 +1,16 @@
// @flow
import defineType from "./utils";
import defineType, { assertNodeType } from "./utils";
defineType("Noop", {
visitor: [],
});
defineType("ParenthesizedExpression", {
visitor: ["expression"],
aliases: ["Expression", "ExpressionWrapper"],
fields: {
expression: {
validate: assertNodeType("Expression"),
},
},
});

View File

@@ -551,23 +551,6 @@ export function isSequenceExpression(node: ?Object, opts?: Object): boolean {
return false;
}
export function isParenthesizedExpression(
node: ?Object,
opts?: Object,
): boolean {
if (!node) return false;
const nodeType = node.type;
if (nodeType === "ParenthesizedExpression") {
if (typeof opts === "undefined") {
return true;
} else {
return shallowEqual(node, opts);
}
}
return false;
}
export function isSwitchCase(node: ?Object, opts?: Object): boolean {
if (!node) return false;
@@ -2093,6 +2076,23 @@ export function isNoop(node: ?Object, opts?: Object): boolean {
return false;
}
export function isParenthesizedExpression(
node: ?Object,
opts?: Object,
): boolean {
if (!node) return false;
const nodeType = node.type;
if (nodeType === "ParenthesizedExpression") {
if (typeof opts === "undefined") {
return true;
} else {
return shallowEqual(node, opts);
}
}
return false;
}
export function isAwaitExpression(node: ?Object, opts?: Object): boolean {
if (!node) return false;
@@ -3242,7 +3242,6 @@ export function isExpression(node: ?Object, opts?: Object): boolean {
"NewExpression" === nodeType ||
"ObjectExpression" === nodeType ||
"SequenceExpression" === nodeType ||
"ParenthesizedExpression" === nodeType ||
"ThisExpression" === nodeType ||
"UnaryExpression" === nodeType ||
"UpdateExpression" === nodeType ||
@@ -3256,6 +3255,7 @@ export function isExpression(node: ?Object, opts?: Object): boolean {
"TypeCastExpression" === nodeType ||
"JSXElement" === nodeType ||
"JSXFragment" === nodeType ||
"ParenthesizedExpression" === nodeType ||
"AwaitExpression" === nodeType ||
"BindExpression" === nodeType ||
"OptionalMemberExpression" === nodeType ||
@@ -3545,8 +3545,8 @@ export function isExpressionWrapper(node: ?Object, opts?: Object): boolean {
if (
nodeType === "ExpressionWrapper" ||
"ExpressionStatement" === nodeType ||
"ParenthesizedExpression" === nodeType ||
"TypeCastExpression" === nodeType
"TypeCastExpression" === nodeType ||
"ParenthesizedExpression" === nodeType
) {
if (typeof opts === "undefined") {
return true;