usingCtx.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. var _SuppressedError = require("core-js-pure/features/suppressed-error.js");
  2. var _Symbol$asyncDispose = require("core-js-pure/features/symbol/async-dispose.js");
  3. var _Symbol$for = require("core-js-pure/features/symbol/for.js");
  4. var _Symbol$dispose = require("core-js-pure/features/symbol/dispose.js");
  5. var _pushInstanceProperty = require("core-js-pure/features/instance/push.js");
  6. var _bindInstanceProperty = require("core-js-pure/features/instance/bind.js");
  7. var _Promise = require("core-js-pure/features/promise/index.js");
  8. function _usingCtx() {
  9. var r = "function" == typeof _SuppressedError ? _SuppressedError : function (r, n) {
  10. var e = Error();
  11. return e.name = "SuppressedError", e.error = r, e.suppressed = n, e;
  12. },
  13. n = {},
  14. e = [];
  15. function using(r, n) {
  16. if (null != n) {
  17. if (Object(n) !== n) throw new TypeError("using declarations can only be used with objects, functions, null, or undefined.");
  18. if (r) var o = n[_Symbol$asyncDispose || _Symbol$for("Symbol.asyncDispose")];
  19. if (null == o && (o = n[_Symbol$dispose || _Symbol$for("Symbol.dispose")]), "function" != typeof o) throw new TypeError("Property [Symbol.dispose] is not a function.");
  20. _pushInstanceProperty(e).call(e, {
  21. v: n,
  22. d: o,
  23. a: r
  24. });
  25. } else r && _pushInstanceProperty(e).call(e, {
  26. d: n,
  27. a: r
  28. });
  29. return n;
  30. }
  31. return {
  32. e: n,
  33. u: _bindInstanceProperty(using).call(using, null, !1),
  34. a: _bindInstanceProperty(using).call(using, null, !0),
  35. d: function d() {
  36. var o = this.e;
  37. function next() {
  38. for (; r = e.pop();) try {
  39. var r,
  40. t = r.d && r.d.call(r.v);
  41. if (r.a) return _Promise.resolve(t).then(next, err);
  42. } catch (r) {
  43. return err(r);
  44. }
  45. if (o !== n) throw o;
  46. }
  47. function err(e) {
  48. return o = o !== n ? new r(e, o) : e, next();
  49. }
  50. return next();
  51. }
  52. };
  53. }
  54. module.exports = _usingCtx, module.exports.__esModule = true, module.exports["default"] = module.exports;