pareto-fountain-pen
Version:
A TypeScript library for easily generating source code files with proper indentation in the pareto programming style/language
11 lines • 1.86 kB
JavaScript
import * as p_ from 'pareto-core/implementation/transformer';
import p_text_from_list from 'pareto-core/implementation/transformer/specials/text_from_list';
import p_list_from_text from 'pareto-core/implementation/refiner/specials/list_from_text';
export const Lines = ($, $p) => {
const indent_characters = p_list_from_text($p['indentation text'], ($) => $);
return p_.from.list($).map(($) => p_text_from_list(p_.literal.segmented_list([
p_.from.list(p_.from.number($.indentation).repeat(indent_characters)).flatten(($) => $),
p_list_from_text($.text, ($) => $)
]), ($) => $));
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWFsaXplZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3BhcmFncmFwaC9zY2hlbWFzL3NlbWlfbGluZXMvdHJhbnNmb3JtZXJzL3NlcmlhbGl6ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM1RCxPQUFPLGdCQUFnQixNQUFNLGdFQUFnRSxDQUFBO0FBQzdGLE9BQU8sZ0JBQWdCLE1BQU0sNERBQTRELENBQUE7QUFtQnpGLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBdUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDL0MsTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FDdEMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQ3RCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsQ0FBQTtJQUNELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUN0QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQ25CLEVBQUUsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUNyQjtRQUNJLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQzdDLGlCQUFpQixDQUNwQixDQUNBLENBQUMsT0FBTyxDQUNMLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1g7UUFDRCxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FFckMsQ0FDSixFQUNELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ1gsQ0FDSixDQUFBO0FBQ0wsQ0FBQyxDQUFBIn0=