@fink/loxia
Version:
A fink to JavaScript compiler.
38 lines (34 loc) • 1.17 kB
JavaScript
import types_0 from "@babel/types";
const numericLiteral_0 = types_0.numericLiteral;
import { parse_int as parse_int_0 } from "@fink/std-lib/num.js";
import { parse_float as parse_float_0 } from "@fink/std-lib/num.js";
import { add as add_0 } from "../context.js";
import { set_js2 as set_js2_0 } from "../context.js";
const transform_int_0 = (expr_0, ctx_0) => {
const value_0 = expr_0[0].args[0];
const val_1 = parse_int_0(value_0);
const sprd_0 = numericLiteral_0(val_1);
const result_3 = set_js2_0(expr_0, { ...sprd_0,
extra: {
rawValue: val_1,
raw: value_0
}
}, ctx_0);
return result_3;
};
const transform_float_0 = (expr_1, ctx_1) => {
const arg_5 = parse_float_0(expr_1[0].args[0]);
const js_1 = numericLiteral_0(arg_5);
const result_6 = set_js2_0(expr_1, js_1, ctx_1);
return result_6;
};
const add_number_0 = ctx_2 => {
const pfn_0 = add_0(`int`, transform_int_0);
const ppr_0 = pfn_0(ctx_2);
const pfn_1 = add_0(`float`, transform_float_0);
const ppr_1 = pfn_1(ppr_0);
return ppr_1;
};
export const transform_int = transform_int_0,
transform_float = transform_float_0,
add_number = add_number_0;