bs-platform
Version:
bucklescript compiler, ocaml standard libary by bucklescript and its required runtime support
229 lines (220 loc) • 7.58 kB
JavaScript
'use strict';
var Block = require("./block.js");
function erase_rel(param) {
if (typeof param === "number") {
return /* End_of_fmtty */0;
} else {
switch (param.tag | 0) {
case 0 :
return /* Char_ty */Block.__(0, [erase_rel(param[0])]);
case 1 :
return /* String_ty */Block.__(1, [erase_rel(param[0])]);
case 2 :
return /* Int_ty */Block.__(2, [erase_rel(param[0])]);
case 3 :
return /* Int32_ty */Block.__(3, [erase_rel(param[0])]);
case 4 :
return /* Nativeint_ty */Block.__(4, [erase_rel(param[0])]);
case 5 :
return /* Int64_ty */Block.__(5, [erase_rel(param[0])]);
case 6 :
return /* Float_ty */Block.__(6, [erase_rel(param[0])]);
case 7 :
return /* Bool_ty */Block.__(7, [erase_rel(param[0])]);
case 8 :
return /* Format_arg_ty */Block.__(8, [
param[0],
erase_rel(param[1])
]);
case 9 :
var ty1 = param[0];
return /* Format_subst_ty */Block.__(9, [
ty1,
ty1,
erase_rel(param[2])
]);
case 10 :
return /* Alpha_ty */Block.__(10, [erase_rel(param[0])]);
case 11 :
return /* Theta_ty */Block.__(11, [erase_rel(param[0])]);
case 12 :
return /* Any_ty */Block.__(12, [erase_rel(param[0])]);
case 13 :
return /* Reader_ty */Block.__(13, [erase_rel(param[0])]);
case 14 :
return /* Ignored_reader_ty */Block.__(14, [erase_rel(param[0])]);
}
}
}
function concat_fmtty(fmtty1, fmtty2) {
if (typeof fmtty1 === "number") {
return fmtty2;
} else {
switch (fmtty1.tag | 0) {
case 0 :
return /* Char_ty */Block.__(0, [concat_fmtty(fmtty1[0], fmtty2)]);
case 1 :
return /* String_ty */Block.__(1, [concat_fmtty(fmtty1[0], fmtty2)]);
case 2 :
return /* Int_ty */Block.__(2, [concat_fmtty(fmtty1[0], fmtty2)]);
case 3 :
return /* Int32_ty */Block.__(3, [concat_fmtty(fmtty1[0], fmtty2)]);
case 4 :
return /* Nativeint_ty */Block.__(4, [concat_fmtty(fmtty1[0], fmtty2)]);
case 5 :
return /* Int64_ty */Block.__(5, [concat_fmtty(fmtty1[0], fmtty2)]);
case 6 :
return /* Float_ty */Block.__(6, [concat_fmtty(fmtty1[0], fmtty2)]);
case 7 :
return /* Bool_ty */Block.__(7, [concat_fmtty(fmtty1[0], fmtty2)]);
case 8 :
return /* Format_arg_ty */Block.__(8, [
fmtty1[0],
concat_fmtty(fmtty1[1], fmtty2)
]);
case 9 :
return /* Format_subst_ty */Block.__(9, [
fmtty1[0],
fmtty1[1],
concat_fmtty(fmtty1[2], fmtty2)
]);
case 10 :
return /* Alpha_ty */Block.__(10, [concat_fmtty(fmtty1[0], fmtty2)]);
case 11 :
return /* Theta_ty */Block.__(11, [concat_fmtty(fmtty1[0], fmtty2)]);
case 12 :
return /* Any_ty */Block.__(12, [concat_fmtty(fmtty1[0], fmtty2)]);
case 13 :
return /* Reader_ty */Block.__(13, [concat_fmtty(fmtty1[0], fmtty2)]);
case 14 :
return /* Ignored_reader_ty */Block.__(14, [concat_fmtty(fmtty1[0], fmtty2)]);
}
}
}
function concat_fmt(fmt1, fmt2) {
if (typeof fmt1 === "number") {
return fmt2;
} else {
switch (fmt1.tag | 0) {
case 0 :
return /* Char */Block.__(0, [concat_fmt(fmt1[0], fmt2)]);
case 1 :
return /* Caml_char */Block.__(1, [concat_fmt(fmt1[0], fmt2)]);
case 2 :
return /* String */Block.__(2, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 3 :
return /* Caml_string */Block.__(3, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 4 :
return /* Int */Block.__(4, [
fmt1[0],
fmt1[1],
fmt1[2],
concat_fmt(fmt1[3], fmt2)
]);
case 5 :
return /* Int32 */Block.__(5, [
fmt1[0],
fmt1[1],
fmt1[2],
concat_fmt(fmt1[3], fmt2)
]);
case 6 :
return /* Nativeint */Block.__(6, [
fmt1[0],
fmt1[1],
fmt1[2],
concat_fmt(fmt1[3], fmt2)
]);
case 7 :
return /* Int64 */Block.__(7, [
fmt1[0],
fmt1[1],
fmt1[2],
concat_fmt(fmt1[3], fmt2)
]);
case 8 :
return /* Float */Block.__(8, [
fmt1[0],
fmt1[1],
fmt1[2],
concat_fmt(fmt1[3], fmt2)
]);
case 9 :
return /* Bool */Block.__(9, [concat_fmt(fmt1[0], fmt2)]);
case 10 :
return /* Flush */Block.__(10, [concat_fmt(fmt1[0], fmt2)]);
case 11 :
return /* String_literal */Block.__(11, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 12 :
return /* Char_literal */Block.__(12, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 13 :
return /* Format_arg */Block.__(13, [
fmt1[0],
fmt1[1],
concat_fmt(fmt1[2], fmt2)
]);
case 14 :
return /* Format_subst */Block.__(14, [
fmt1[0],
fmt1[1],
concat_fmt(fmt1[2], fmt2)
]);
case 15 :
return /* Alpha */Block.__(15, [concat_fmt(fmt1[0], fmt2)]);
case 16 :
return /* Theta */Block.__(16, [concat_fmt(fmt1[0], fmt2)]);
case 17 :
return /* Formatting_lit */Block.__(17, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 18 :
return /* Formatting_gen */Block.__(18, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 19 :
return /* Reader */Block.__(19, [concat_fmt(fmt1[0], fmt2)]);
case 20 :
return /* Scan_char_set */Block.__(20, [
fmt1[0],
fmt1[1],
concat_fmt(fmt1[2], fmt2)
]);
case 21 :
return /* Scan_get_counter */Block.__(21, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 22 :
return /* Scan_next_char */Block.__(22, [concat_fmt(fmt1[0], fmt2)]);
case 23 :
return /* Ignored_param */Block.__(23, [
fmt1[0],
concat_fmt(fmt1[1], fmt2)
]);
case 24 :
return /* Custom */Block.__(24, [
fmt1[0],
fmt1[1],
concat_fmt(fmt1[2], fmt2)
]);
}
}
}
exports.concat_fmtty = concat_fmtty;
exports.erase_rel = erase_rel;
exports.concat_fmt = concat_fmt;
/* No side effect */