Socket
Socket
Sign inDemoInstall

@babel/plugin-proposal-async-generator-functions

Package Overview
Dependencies
Maintainers
5
Versions
74
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-proposal-async-generator-functions - npm Package Compare versions

Comparing version 7.0.0-beta.46 to 7.0.0-beta.47

66

lib/for-await.js

@@ -9,3 +9,3 @@ "use strict";

function _core() {
var data = require("@babel/core");
const data = require("@babel/core");

@@ -19,13 +19,45 @@ _core = function _core() {

var buildForAwait = (0, _core().template)("\n async function wrapper() {\n var ITERATOR_COMPLETION = true;\n var ITERATOR_HAD_ERROR_KEY = false;\n var ITERATOR_ERROR_KEY;\n try {\n for (\n var ITERATOR_KEY = GET_ITERATOR(OBJECT), STEP_KEY, STEP_VALUE;\n (\n STEP_KEY = await ITERATOR_KEY.next(),\n ITERATOR_COMPLETION = STEP_KEY.done,\n STEP_VALUE = await STEP_KEY.value,\n !ITERATOR_COMPLETION\n );\n ITERATOR_COMPLETION = true) {\n }\n } catch (err) {\n ITERATOR_HAD_ERROR_KEY = true;\n ITERATOR_ERROR_KEY = err;\n } finally {\n try {\n if (!ITERATOR_COMPLETION && ITERATOR_KEY.return != null) {\n await ITERATOR_KEY.return();\n }\n } finally {\n if (ITERATOR_HAD_ERROR_KEY) {\n throw ITERATOR_ERROR_KEY;\n }\n }\n }\n }\n");
const buildForAwait = (0, _core().template)(`
async function wrapper() {
var ITERATOR_COMPLETION = true;
var ITERATOR_HAD_ERROR_KEY = false;
var ITERATOR_ERROR_KEY;
try {
for (
var ITERATOR_KEY = GET_ITERATOR(OBJECT), STEP_KEY, STEP_VALUE;
(
STEP_KEY = await ITERATOR_KEY.next(),
ITERATOR_COMPLETION = STEP_KEY.done,
STEP_VALUE = await STEP_KEY.value,
!ITERATOR_COMPLETION
);
ITERATOR_COMPLETION = true) {
}
} catch (err) {
ITERATOR_HAD_ERROR_KEY = true;
ITERATOR_ERROR_KEY = err;
} finally {
try {
if (!ITERATOR_COMPLETION && ITERATOR_KEY.return != null) {
await ITERATOR_KEY.return();
}
} finally {
if (ITERATOR_HAD_ERROR_KEY) {
throw ITERATOR_ERROR_KEY;
}
}
}
}
`);
function _default(path, _ref) {
var getAsyncIterator = _ref.getAsyncIterator;
var node = path.node,
scope = path.scope,
parent = path.parent;
var stepKey = scope.generateUidIdentifier("step");
var stepValue = scope.generateUidIdentifier("value");
var left = node.left;
var declar;
function _default(path, {
getAsyncIterator
}) {
const node = path.node,
scope = path.scope,
parent = path.parent;
const stepKey = scope.generateUidIdentifier("step");
const stepValue = scope.generateUidIdentifier("value");
const left = node.left;
let declar;

@@ -38,3 +70,3 @@ if (_core().types.isIdentifier(left) || _core().types.isPattern(left) || _core().types.isMemberExpression(left)) {

var template = buildForAwait({
let template = buildForAwait({
ITERATOR_HAD_ERROR_KEY: scope.generateUidIdentifier("didIteratorError"),

@@ -51,6 +83,6 @@ ITERATOR_COMPLETION: scope.generateUidIdentifier("iteratorNormalCompletion"),

var isLabeledParent = _core().types.isLabeledStatement(parent);
const isLabeledParent = _core().types.isLabeledStatement(parent);
var tryBody = template[3].block.body;
var loop = tryBody[0];
const tryBody = template[3].block.body;
const loop = tryBody[0];

@@ -64,5 +96,5 @@ if (isLabeledParent) {

node: template,
declar: declar,
loop: loop
declar,
loop
};
}

@@ -9,3 +9,3 @@ "use strict";

function _helperPluginUtils() {
var data = require("@babel/helper-plugin-utils");
const data = require("@babel/helper-plugin-utils");

@@ -20,3 +20,3 @@ _helperPluginUtils = function _helperPluginUtils() {

function _helperRemapAsyncToGenerator() {
var data = _interopRequireDefault(require("@babel/helper-remap-async-to-generator"));
const data = _interopRequireDefault(require("@babel/helper-remap-async-to-generator"));

@@ -31,3 +31,3 @@ _helperRemapAsyncToGenerator = function _helperRemapAsyncToGenerator() {

function _pluginSyntaxAsyncGenerators() {
var data = _interopRequireDefault(require("@babel/plugin-syntax-async-generators"));
const data = _interopRequireDefault(require("@babel/plugin-syntax-async-generators"));

@@ -42,3 +42,3 @@ _pluginSyntaxAsyncGenerators = function _pluginSyntaxAsyncGenerators() {

function _core() {
var data = require("@babel/core");
const data = require("@babel/core");

@@ -56,29 +56,34 @@ _core = function _core() {

var _default = (0, _helperPluginUtils().declare)(function (api) {
var _default = (0, _helperPluginUtils().declare)(api => {
api.assertVersion(7);
var yieldStarVisitor = {
Function: function Function(path) {
const yieldStarVisitor = {
Function(path) {
path.skip();
},
YieldExpression: function YieldExpression(_ref, state) {
var node = _ref.node;
YieldExpression({
node
}, state) {
if (!node.delegate) return;
var callee = state.addHelper("asyncGeneratorDelegate");
const callee = state.addHelper("asyncGeneratorDelegate");
node.argument = _core().types.callExpression(callee, [_core().types.callExpression(state.addHelper("asyncIterator"), [node.argument]), state.addHelper("awaitAsyncGenerator")]);
}
};
var forAwaitVisitor = {
Function: function Function(path) {
const forAwaitVisitor = {
Function(path) {
path.skip();
},
ForOfStatement: function ForOfStatement(path, _ref2) {
var file = _ref2.file;
var node = path.node;
ForOfStatement(path, {
file
}) {
const node = path.node;
if (!node.await) return;
var build = (0, _forAwait.default)(path, {
const build = (0, _forAwait.default)(path, {
getAsyncIterator: file.addHelper("asyncIterator")
});
var declar = build.declar,
loop = build.loop;
var block = loop.body;
const declar = build.declar,
loop = build.loop;
const block = loop.body;
path.ensureBlock();

@@ -102,5 +107,6 @@

}
};
var visitor = {
Function: function Function(path, state) {
const visitor = {
Function(path, state) {
if (!path.node.async) return;

@@ -115,2 +121,3 @@ path.traverse(forAwaitVisitor, state);

}
};

@@ -120,5 +127,6 @@ return {

visitor: {
Program: function Program(path, state) {
Program(path, state) {
path.traverse(visitor, state);
}
}

@@ -125,0 +133,0 @@ };

{
"name": "@babel/plugin-proposal-async-generator-functions",
"version": "7.0.0-beta.46",
"version": "7.0.0-beta.47",
"description": "Turn async generator functions into ES2015 generators",

@@ -12,13 +12,13 @@ "repository": "https://github.com/babel/babel/tree/master/packages/babel-plugin-proposal-async-generator-functions",

"dependencies": {
"@babel/helper-plugin-utils": "7.0.0-beta.46",
"@babel/helper-remap-async-to-generator": "7.0.0-beta.46",
"@babel/plugin-syntax-async-generators": "7.0.0-beta.46"
"@babel/helper-plugin-utils": "7.0.0-beta.47",
"@babel/helper-remap-async-to-generator": "7.0.0-beta.47",
"@babel/plugin-syntax-async-generators": "7.0.0-beta.47"
},
"peerDependencies": {
"@babel/core": "7.0.0-beta.46"
"@babel/core": "7.0.0-beta.47"
},
"devDependencies": {
"@babel/core": "7.0.0-beta.46",
"@babel/helper-plugin-test-runner": "7.0.0-beta.46"
"@babel/core": "7.0.0-beta.47",
"@babel/helper-plugin-test-runner": "7.0.0-beta.47"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc