@reactivex/ix-es5-esm
Version:
The Interactive Extensions for JavaScript
71 lines (69 loc) • 2.72 kB
JavaScript
import { __asyncGenerator, __await, __extends, __generator, __values } from "tslib";
import { AsyncIterableX } from './asynciterablex.js';
import { throwIfAborted } from '../aborterror.js';
/** @ignore */
var OfAsyncIterable = /** @class */ (function (_super) {
__extends(OfAsyncIterable, _super);
function OfAsyncIterable(args) {
var _this = _super.call(this) || this;
_this._args = args;
return _this;
}
OfAsyncIterable.prototype[Symbol.asyncIterator] = function (signal) {
return __asyncGenerator(this, arguments, function _a() {
var _b, _c, item, e_1_1;
var e_1, _d;
return __generator(this, function (_e) {
switch (_e.label) {
case 0:
throwIfAborted(signal);
_e.label = 1;
case 1:
_e.trys.push([1, 7, 8, 9]);
_b = __values(this._args), _c = _b.next();
_e.label = 2;
case 2:
if (!!_c.done) return [3 /*break*/, 6];
item = _c.value;
return [4 /*yield*/, __await(item)];
case 3: return [4 /*yield*/, _e.sent()];
case 4:
_e.sent();
_e.label = 5;
case 5:
_c = _b.next();
return [3 /*break*/, 2];
case 6: return [3 /*break*/, 9];
case 7:
e_1_1 = _e.sent();
e_1 = { error: e_1_1 };
return [3 /*break*/, 9];
case 8:
try {
if (_c && !_c.done && (_d = _b.return)) _d.call(_b);
}
finally { if (e_1) throw e_1.error; }
return [7 /*endfinally*/];
case 9: return [2 /*return*/];
}
});
});
};
return OfAsyncIterable;
}(AsyncIterableX));
export { OfAsyncIterable };
/**
* Creates an async-iterable from the specified elements.
*
* @template TSource The type of the elements to create an async-iterable sequence.
* @param {...TSource[]} args The elements to turn into an async-iterable sequence.
* @returns {AsyncIterableX<TSource>} The async-iterable sequence created from the elements.
*/
export function of() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return new OfAsyncIterable(args);
}
//# sourceMappingURL=of.js.map