summaryrefslogtreecommitdiff
path: root/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2024-08-30 17:21:18 +0800
committerlittleblack111 <littleblack11111@gmail.com>2024-08-30 17:21:18 +0800
commitefbc2ffe6a1ee5ec38a4396305561d6515d0943e (patch)
tree2b4c94f18f2c792dfda813050755d5c0273fae22 /node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
parent43acceb75957c880a5ba5a31aae221394a36d5f6 (diff)
node fixes, updates
Diffstat (limited to 'node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js')
-rw-r--r--node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js68
1 files changed, 65 insertions, 3 deletions
diff --git a/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js b/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
index a62dcf02..b818e2e4 100644
--- a/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
+++ b/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js
@@ -1,7 +1,69 @@
-var AsyncGenerator = require("./AsyncGenerator.js");
-function _wrapAsyncGenerator(fn) {
+var OverloadYield = require("./OverloadYield.js");
+function _wrapAsyncGenerator(e) {
return function () {
- return new AsyncGenerator(fn.apply(this, arguments));
+ return new AsyncGenerator(e.apply(this, arguments));
};
}
+function AsyncGenerator(e) {
+ var r, t;
+ function resume(r, t) {
+ try {
+ var n = e[r](t),
+ o = n.value,
+ u = o instanceof OverloadYield;
+ Promise.resolve(u ? o.v : o).then(function (t) {
+ if (u) {
+ var i = "return" === r ? "return" : "next";
+ if (!o.k || t.done) return resume(i, t);
+ t = e[i](t).value;
+ }
+ settle(n.done ? "return" : "normal", t);
+ }, function (e) {
+ resume("throw", e);
+ });
+ } catch (e) {
+ settle("throw", e);
+ }
+ }
+ function settle(e, n) {
+ switch (e) {
+ case "return":
+ r.resolve({
+ value: n,
+ done: !0
+ });
+ break;
+ case "throw":
+ r.reject(n);
+ break;
+ default:
+ r.resolve({
+ value: n,
+ done: !1
+ });
+ }
+ (r = r.next) ? resume(r.key, r.arg) : t = null;
+ }
+ this._invoke = function (e, n) {
+ return new Promise(function (o, u) {
+ var i = {
+ key: e,
+ arg: n,
+ resolve: o,
+ reject: u,
+ next: null
+ };
+ t ? t = t.next = i : (r = t = i, resume(e, n));
+ });
+ }, "function" != typeof e["return"] && (this["return"] = void 0);
+}
+AsyncGenerator.prototype["function" == typeof Symbol && Symbol.asyncIterator || "@@asyncIterator"] = function () {
+ return this;
+}, AsyncGenerator.prototype.next = function (e) {
+ return this._invoke("next", e);
+}, AsyncGenerator.prototype["throw"] = function (e) {
+ return this._invoke("throw", e);
+}, AsyncGenerator.prototype["return"] = function (e) {
+ return this._invoke("return", e);
+};
module.exports = _wrapAsyncGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports; \ No newline at end of file