rapunzel

0.1.13 • Public • Published

rapunzel [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][daviddm-image]][daviddm-url]

This lightweight module simplifies the process of generating code strings

Install

$ npm install --save rapunzel

Usage

var rapunzel = require('rapunzel');
 
var h_obj = {
    "example":
    {
        "of": "stringifying a simple object",
        "that": "only has objects and strings",
    }
};
 
var stringify_obj = function(add, h_part) {
    if('string' === typeof h_part) {
        add("'"+h_part.replace(/'/g, "\\'")+"'", true);
    }
    else {
        add.open('{', ',', true);
        for(var s_property in h_part) {
            add(s_property+'');
            stringify_obj(add, h_part[s_property]);
        }
        add.close('}');
    }
};
 
var k_builder = rapunzel({
    preamble: function(add) {
        add('// this is the beginning');
    },
    body: function(add) {
        stringify_obj(add, h_obj);
    },
    closing: function(add) {
        add('// this is the end');
    },
});
 
k_builder.produce({
    indent: '\t',
});

yields:

// this is the beginning
{
    example: {
        of: 'stringifying a simple object',
        that: 'only has objects and strings',
    },
}
// this is the end

License

ISC © Blake Regalia

Readme

Keywords

Package Sidebar

Install

npm i rapunzel

Weekly Downloads

0

Version

0.1.13

License

ISC

Last publish

Collaborators

  • blake.regalia