UNPKG

@effectful/cc

Version:

Multi-prompt delimited continuations runtime

263 lines (262 loc) 8.23 kB
"no-ctrl"; var $M = require("@effectful/debugger/apiMin"), $x = $M.context, $ret = $M.ret, $unhandled = $M.unhandled, $raise = $M.raise, $force = $M.force, $mcall = $M.mcall, $m = $M.module("src/async.ts", null, typeof module === "undefined" ? null : module, null, "$", { __webpack_require__: typeof __webpack_require__ !== "undefined" && __webpack_require__ }, null), $s$1 = [{ _macro: [1, null], CC: [2, null], prompt: [3, "4:6-4:12"], reify: [4, "14:16-14:21"], reflect: [5, "35:16-35:23"] }, null, 0], $s$2 = [{ value: [1, "14:25-14:46"] }, $s$1, 1], $s$3 = [{ cont: [1, "15:27-15:31"] }, $s$2, 2], $s$4 = [{ value: [1, "17:11-17:16"] }, $s$3, 3], $s$5 = [{}, $s$4, 4], $s$6 = [{ error: [1, "18:11-18:16"] }, $s$3, 3], $s$7 = [{}, $s$6, 4], $s$8 = [{ body: [1, "35:27-35:40"], resolve: [2, "36:6-36:33"], reject: [3, "37:6-37:38"], promise: [4, "38:8-38:15"] }, $s$1, 1], $s$9 = [{ rs: [1, "38:34-38:36"], rj: [2, "38:38-38:40"] }, $s$8, 2], $s$10 = [{}, $s$8, 2], $s$11 = [{ e: [1, "45:13-45:14"] }, $s$10, 2], $m$0 = $M.fun("m$0", "async.ts", null, null, [], 0, 6, "1:0-51:0", 160, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $l[4 /*reify*/] = $m$1($); $l[5 /*reflect*/] = $m$7($); module.exports.__esModule = true; module.exports.reflect = $l[5 /*reflect*/]; module.exports.reify = $l[4 /*reify*/]; $l[1 /*_macro*/] = null; $.goto = 1; $p = ($x.moduleId = require.resolve("./main"), $force(require("./main"))); $.state = 1; case 1: $l[2 /*CC*/] = $p; $.goto = 2; $p = $mcall("newPrompt", $l[2 /*CC*/], "async"); $.state = 2; case 2: $l[3 /*prompt*/] = $p; $.goto = 4; continue; case 3: $.goto = 4; return $unhandled($.error); case 4: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 0, [[2, null, $s$1], [2, "4:15-4:36", $s$1], [0, "4:6-4:36", $s$1], [16, "51:0-51:0", $s$1], [16, "51:0-51:0", $s$1]]), $m$1 = $M.fun("m$1", "reify", null, $m$0, ["value"], 0, 2, "14:7-24:1", 128, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 1; $p = $mcall("shift", $l[0][2 /*CC*/], $l[0][3 /*prompt*/], $m$2($)); $.state = 1; case 1: $.result = $p; $.goto = 3; continue; case 2: $.goto = 3; return $unhandled($.error); case 3: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 1, [[2, "15:9-23:7", $s$2], [0, null, $s$2], [16, "24:1-24:1", $s$2], [16, "24:1-24:1", $s$2]]), $m$2 = $M.fun("m$2", null, null, $m$1, ["cont"], 0, 2, "15:26-22:9", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 1; $p = $mcall("then", $l[0][1 /*value*/], $m$3($), $m$5($)); $.state = 1; case 1: $.result = $p; $.goto = 3; continue; case 2: $.goto = 3; return $unhandled($.error); case 3: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 2, [[2, "16:8-22:9", $s$3], [0, null, $s$3], [16, "22:9-22:9", $s$3], [16, "22:9-22:9", $s$3]]), $m$3 = $M.fun("m$3", null, null, $m$2, ["value"], 0, 2, "17:10-17:38", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 1; $p = ($x.call = $l[0][1 /*cont*/])($m$4($)); $.state = 1; case 1: $.result = $p; $.goto = 3; continue; case 2: $.goto = 3; return $unhandled($.error); case 3: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 3, [[2, "17:21-17:38", $s$4], [0, null, $s$4], [16, "17:38-17:38", $s$4], [16, "17:38-17:38", $s$4]]), $m$4 = $M.fun("m$4", null, null, $m$3, [], 0, 1, "17:26-17:37", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.result = $l[0][1 /*value*/]; $.goto = 2; continue; case 1: $.goto = 2; return $unhandled($.error); case 2: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 4, [[0, null, $s$5], [16, "17:37-17:37", $s$5], [16, "17:37-17:37", $s$5]]), $m$5 = $M.fun("m$5", null, null, $m$2, ["error"], 0, 2, "18:10-21:14", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 1; $p = ($x.call = $l[0][1 /*cont*/])($m$6($)); $.state = 1; case 1: $.result = $p; $.goto = 3; continue; case 2: $.goto = 3; return $unhandled($.error); case 3: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 3, [[2, "19:12-21:14", $s$6], [0, null, $s$6], [16, "21:14-21:14", $s$6], [16, "21:14-21:14", $s$6]]), $m$6 = $M.fun("m$6", null, null, $m$5, [], 0, 1, "19:17-21:13", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 2; return $raise($l[0][1 /*error*/]); case 1: $.goto = 2; return $unhandled($.error); case 2: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 4, [[0, "20:14-20:26", $s$7], [16, "21:13-21:13", $s$7], [16, "21:13-21:13", $s$7]]), $m$7 = $M.fun("m$7", "reflect", null, $m$0, ["body"], 0, 5, "35:7-50:1", 128, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.goto = 1; $p = new ($x.call = Promise)($m$8($)); $.state = 1; case 1: $l[4 /*promise*/] = $p; $.goto = 2; $mcall("pushPrompt", $l[0][2 /*CC*/], $l[0][3 /*prompt*/], $m$9($)); $.state = 2; case 2: $.result = $l[4 /*promise*/]; $.goto = 4; continue; case 3: $.goto = 4; return $unhandled($.error); case 4: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 1, [[2, "38:18-41:4", $s$8], [2, "42:2-48:4", $s$8], [0, null, $s$8], [16, "50:1-50:1", $s$8], [16, "50:1-50:1", $s$8]]), $m$8 = $M.fun("m$8", null, null, $m$7, ["rs", "rj"], 0, 3, "38:33-41:3", 132, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $l[0][2 /*resolve*/] = $l[1 /*rs*/]; $l[0][3 /*reject*/] = $l[2 /*rj*/]; $.goto = 2; continue; case 1: $.goto = 2; return $unhandled($.error); case 2: return $ret($.result); default: throw new Error("Invalid state"); } }, null, null, 2, [[0, "39:4-39:16", $s$9], [16, "41:3-41:3", $s$9], [16, "41:3-41:3", $s$9]]), $m$9 = $M.fun("m$9", null, null, $m$7, [], 0, 3, "42:24-48:3", 128, function ($, $l, $p) { for (;;) switch ($.state = $.goto) { case 0: $.state = 1; case 1: $l[2] = $l[0][2 /*resolve*/]; $.goto = 2; $p = ($x.call = $l[0][1 /*body*/])(); $.state = 2; case 2: $.goto = 3; ($x.call = $l[2])($p); $.state = 3; case 3: $.goto = 6; continue; case 4: $l[1 /*e*/] = $.error; $.error = void 0; $.goto = 3; ($x.call = $l[0][3 /*reject*/])($l[1 /*e*/]); continue; case 5: $.goto = 6; return $unhandled($.error); case 6: return $ret($.result); default: throw new Error("Invalid state"); } }, function ($, $l) { switch ($.state) { case 2: case 1: $.goto = 4; break; default: $.goto = 5; } }, null, 2, [[0, null, $s$10], [3, "44:14-44:20", $s$10], [3, "44:6-44:21", $s$10], [0, null, $s$10], [2, "46:6-46:15", $s$11], [16, "48:3-48:3", $s$10], [16, "48:3-48:3", $s$10]]); $M.moduleExports();