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 {
this.open('{', ',', true);
for(var s_property in h_part) {
add(s_property+': ');
stringify_obj.apply(this, [add, h_part[s_property]]);
}
this.close('}');
}
};
var k_builder = rapunzel({
preamble: function(add) {
add('// this is the beginning');
},
body: function(add) {
stringify_obj.apply(this, [add, h_obj]);
},
closing: function(add) {
add('// this is the end');
},
});
k_builder.produce({
indent: '\t',
});
yields:
{
example: {
of: 'stringifying a simple object',
that: 'only has objects and strings',
},
}
License
ISC © Blake Regalia