From 5de7433147d1fe43476c8441b0da97662441c436 Mon Sep 17 00:00:00 2001 From: Logan Smyth Date: Sat, 16 Jul 2016 15:20:00 -0700 Subject: [PATCH] Avoid calls to isUserWhitespacable by explicitly marking statement lists. --- packages/babel-generator/src/generators/flow.js | 1 + packages/babel-generator/src/generators/types.js | 2 +- packages/babel-generator/src/node/index.js | 5 ----- packages/babel-generator/src/printer.js | 2 +- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/packages/babel-generator/src/generators/flow.js b/packages/babel-generator/src/generators/flow.js index eb4845ce1c..bd3748e51f 100644 --- a/packages/babel-generator/src/generators/flow.js +++ b/packages/babel-generator/src/generators/flow.js @@ -251,6 +251,7 @@ export function ObjectTypeAnnotation(node: Object) { this.printJoin(props, node, { indent: true, + statement: true, iterator: () => { if (props.length !== 1) { this.semicolon(); diff --git a/packages/babel-generator/src/generators/types.js b/packages/babel-generator/src/generators/types.js index ccca3ba6dc..c1497250b3 100644 --- a/packages/babel-generator/src/generators/types.js +++ b/packages/babel-generator/src/generators/types.js @@ -38,7 +38,7 @@ export function ObjectExpression(node: Object) { if (props.length) { this.space(); - this.printList(props, node, { indent: true }); + this.printList(props, node, { indent: true, statement: true }); this.space(); } diff --git a/packages/babel-generator/src/node/index.js b/packages/babel-generator/src/node/index.js index 4f1d48c42b..971f478a3d 100644 --- a/packages/babel-generator/src/node/index.js +++ b/packages/babel-generator/src/node/index.js @@ -53,11 +53,6 @@ function isOrHasCallExpression(node) { } } - -export function isUserWhitespacable(node) { - return t.isUserWhitespacable(node); -} - export function needsWhitespace(node, parent, type) { if (!node) return 0; diff --git a/packages/babel-generator/src/printer.js b/packages/babel-generator/src/printer.js index 82f285ef44..6608e4b419 100644 --- a/packages/babel-generator/src/printer.js +++ b/packages/babel-generator/src/printer.js @@ -448,7 +448,7 @@ export default class Printer { // Fast path since 'this.newline' does nothing when not tracking lines. if (this.format.retainLines || this.format.compact) return; - if (!opts.statement && !n.isUserWhitespacable(node, parent)) { + if (!opts.statement) { return; }