123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = _asyncGeneratorDelegate;
- function _asyncGeneratorDelegate(inner, awaitWrap) {
- var iter = {}, waiting = false;
- function pump(key, value) {
- waiting = true;
- value = new Promise(function(resolve) {
- resolve(inner[key](value));
- });
- return {
- done: false,
- value: awaitWrap(value)
- };
- }
- if (typeof Symbol === "function" && Symbol.iterator) {
- iter[Symbol.iterator] = function() {
- return this;
- };
- }
- iter.next = function(value) {
- if (waiting) {
- waiting = false;
- return value;
- }
- return pump("next", value);
- };
- if (typeof inner.throw === "function") {
- iter.throw = function(value) {
- if (waiting) {
- waiting = false;
- throw value;
- }
- return pump("throw", value);
- };
- }
- if (typeof inner.return === "function") {
- iter.return = function(value) {
- return pump("return", value);
- };
- }
- return iter;
- }
|