UNPKG

bucklescript-tea

Version:
43 lines (38 loc) 1.67 kB
// Generated by BUCKLESCRIPT, PLEASE EDIT WITH CARE 'use strict'; var Block = require("bs-platform/lib/js/block.js"); var Curry = require("bs-platform/lib/js/curry.js"); var Caml_option = require("bs-platform/lib/js/caml_option.js"); function cmd(promise, tagger) { return /* EnqueueCall */Block.__(2, [(function (callbacks) { promise.then((function (res) { var match = Curry._1(tagger, res); if (match !== undefined) { Curry._1(callbacks.contents.enqueue, Caml_option.valFromOption(match)); return Promise.resolve(/* () */0); } else { return Promise.resolve(/* () */0); } })); return /* () */0; })]); } function result(promise, msg) { return /* EnqueueCall */Block.__(2, [(function (callbacks) { var enq = function (result) { return Curry._1(callbacks.contents.enqueue, Curry._1(msg, result)); }; promise.then((function (res) { return Promise.resolve(enq(/* Ok */Block.__(0, [res]))); })).catch((function (err) { var err_to_string = function (err) { return "" + (String(err) + ""); }; return Promise.resolve(enq(/* Error */Block.__(1, [err_to_string(err)]))); })); return /* () */0; })]); } exports.cmd = cmd; exports.result = result; /* No side effect */