123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import OverloadYield from "./OverloadYield.js";
- function _wrapAsyncGenerator(e) {
- return function () {
- 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);
- };
- export { _wrapAsyncGenerator as default };
|