[d24f17c] | 1 | var OverloadYield = require("./OverloadYield.js");
|
---|
| 2 | function AsyncGenerator(e) {
|
---|
| 3 | var r, t;
|
---|
| 4 | function resume(r, t) {
|
---|
| 5 | try {
|
---|
| 6 | var n = e[r](t),
|
---|
| 7 | o = n.value,
|
---|
| 8 | u = o instanceof OverloadYield;
|
---|
| 9 | Promise.resolve(u ? o.v : o).then(function (t) {
|
---|
| 10 | if (u) {
|
---|
| 11 | var i = "return" === r ? "return" : "next";
|
---|
| 12 | if (!o.k || t.done) return resume(i, t);
|
---|
| 13 | t = e[i](t).value;
|
---|
| 14 | }
|
---|
| 15 | settle(n.done ? "return" : "normal", t);
|
---|
| 16 | }, function (e) {
|
---|
| 17 | resume("throw", e);
|
---|
| 18 | });
|
---|
| 19 | } catch (e) {
|
---|
| 20 | settle("throw", e);
|
---|
| 21 | }
|
---|
| 22 | }
|
---|
| 23 | function settle(e, n) {
|
---|
| 24 | switch (e) {
|
---|
| 25 | case "return":
|
---|
| 26 | r.resolve({
|
---|
| 27 | value: n,
|
---|
| 28 | done: !0
|
---|
| 29 | });
|
---|
| 30 | break;
|
---|
| 31 | case "throw":
|
---|
| 32 | r.reject(n);
|
---|
| 33 | break;
|
---|
| 34 | default:
|
---|
| 35 | r.resolve({
|
---|
| 36 | value: n,
|
---|
| 37 | done: !1
|
---|
| 38 | });
|
---|
| 39 | }
|
---|
| 40 | (r = r.next) ? resume(r.key, r.arg) : t = null;
|
---|
| 41 | }
|
---|
| 42 | this._invoke = function (e, n) {
|
---|
| 43 | return new Promise(function (o, u) {
|
---|
| 44 | var i = {
|
---|
| 45 | key: e,
|
---|
| 46 | arg: n,
|
---|
| 47 | resolve: o,
|
---|
| 48 | reject: u,
|
---|
| 49 | next: null
|
---|
| 50 | };
|
---|
| 51 | t ? t = t.next = i : (r = t = i, resume(e, n));
|
---|
| 52 | });
|
---|
| 53 | }, "function" != typeof e["return"] && (this["return"] = void 0);
|
---|
| 54 | }
|
---|
| 55 | AsyncGenerator.prototype["function" == typeof Symbol && Symbol.asyncIterator || "@@asyncIterator"] = function () {
|
---|
| 56 | return this;
|
---|
| 57 | }, AsyncGenerator.prototype.next = function (e) {
|
---|
| 58 | return this._invoke("next", e);
|
---|
| 59 | }, AsyncGenerator.prototype["throw"] = function (e) {
|
---|
| 60 | return this._invoke("throw", e);
|
---|
| 61 | }, AsyncGenerator.prototype["return"] = function (e) {
|
---|
| 62 | return this._invoke("return", e);
|
---|
| 63 | };
|
---|
| 64 | module.exports = AsyncGenerator, module.exports.__esModule = true, module.exports["default"] = module.exports; |
---|