UNPKG

@babel/plugin-transform-regenerator

Version:

Explode async and generator functions into a state machine.

46 lines (43 loc) 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _helperPluginUtils = require("@babel/helper-plugin-utils"); var _visit = require("./regenerator/visit.js"); var _default = exports.default = (0, _helperPluginUtils.declare)(({ types: t, traverse, assertVersion }) => { assertVersion(7); return { name: "transform-regenerator", visitor: traverse.visitors.merge([(0, _visit.getVisitor)(t), { CallExpression(path) { { var _this$availableHelper; if (!((_this$availableHelper = this.availableHelper) != null && _this$availableHelper.call(this, "regeneratorRuntime"))) { return; } } const callee = path.get("callee"); if (!callee.isMemberExpression()) return; const obj = callee.get("object"); if (obj.isIdentifier({ name: "regeneratorRuntime" })) { const helper = this.addHelper("regeneratorRuntime"); { if (t.isArrowFunctionExpression(helper)) { obj.replaceWith(helper.body); return; } } obj.replaceWith(t.callExpression(helper, [])); } } }]) }; }); //# sourceMappingURL=index.js.map