diff --git a/src/babel/transformation/transformers/es6/arrow-functions.js b/src/babel/transformation/transformers/es6/arrow-functions.js index 653cf6b78e..26787acaf2 100644 --- a/src/babel/transformation/transformers/es6/arrow-functions.js +++ b/src/babel/transformation/transformers/es6/arrow-functions.js @@ -2,7 +2,7 @@ import * as t from "../../../types"; export var visitor = { ArrowFunctionExpression(node) { - t.ensureBlock(node); + this.ensureBlock(); node.expression = false; node.type = "FunctionExpression"; diff --git a/src/babel/transformation/transformers/es6/destructuring.js b/src/babel/transformation/transformers/es6/destructuring.js index 9596aa1891..d1c79fd5e0 100644 --- a/src/babel/transformation/transformers/es6/destructuring.js +++ b/src/babel/transformation/transformers/es6/destructuring.js @@ -18,7 +18,7 @@ export var visitor = { t.variableDeclarator(temp) ]); - t.ensureBlock(node); + this.ensureBlock(); node.body.body.unshift(t.variableDeclaration("var", [ t.variableDeclarator(left, temp) @@ -48,7 +48,7 @@ export var visitor = { destructuring.init(pattern, key); - t.ensureBlock(node); + this.ensureBlock(); var block = node.body; block.body = nodes.concat(block.body); @@ -84,7 +84,7 @@ export var visitor = { destructuring.init(pattern, ref); } - t.ensureBlock(node); + this.ensureBlock(); var block = node.body; block.body = nodes.concat(block.body); diff --git a/src/babel/transformation/transformers/es6/for-of.js b/src/babel/transformation/transformers/es6/for-of.js index feb87dd568..9d41824820 100644 --- a/src/babel/transformation/transformers/es6/for-of.js +++ b/src/babel/transformation/transformers/es6/for-of.js @@ -17,7 +17,7 @@ export var visitor = { var block = loop.body; // ensure that it's a block so we can take all its statements - t.ensureBlock(node); + this.ensureBlock(); // add the value declaration to the new loop body if (declar) { diff --git a/src/babel/transformation/transformers/es6/parameters.default.js b/src/babel/transformation/transformers/es6/parameters.default.js index 4e8322e713..f6cd429a2f 100644 --- a/src/babel/transformation/transformers/es6/parameters.default.js +++ b/src/babel/transformation/transformers/es6/parameters.default.js @@ -27,7 +27,7 @@ export var visitor = { if (!hasDefaults(node)) return; // ensure it's a block, useful for arrow functions - t.ensureBlock(node); + this.ensureBlock(); var state = { iife: false, diff --git a/src/babel/transformation/transformers/es6/tail-call.js b/src/babel/transformation/transformers/es6/tail-call.js index 908daffe7c..104cd65a6c 100644 --- a/src/babel/transformation/transformers/es6/tail-call.js +++ b/src/babel/transformation/transformers/es6/tail-call.js @@ -150,7 +150,7 @@ class TailCallTransformer { // - var body = t.ensureBlock(node).body; + var body = this.path.ensureBlock().body; for (var i = 0; i < body.length; i++) { var bodyNode = body[i]; diff --git a/src/babel/traversal/path/conversion.js b/src/babel/traversal/path/conversion.js index 24293c7d8b..f13f78470e 100644 --- a/src/babel/traversal/path/conversion.js +++ b/src/babel/traversal/path/conversion.js @@ -22,3 +22,11 @@ export function toComputedKey(): Object { return key; } + +/** + * Description + */ + +export function ensureBlock() { + return t.ensureBlock(this.node); +}