You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/** * Expose `Compiler`. */
module.exports = Compiler;
/** * Initialize a compiler. * * @param {Type} name * @return {Type} * @api public */
function Compiler(opts) { this.options = opts || {}; }
/** * Emit `str` */
Compiler.prototype.emit = function(str) { return str; };
/** * Visit `node`. */
Compiler.prototype.visit = function(node){ return this[node.type](node); };
/** * Map visit over array of `nodes`, optionally using a `delim` */
Compiler.prototype.mapVisit = function(nodes, delim){ var buf = ''; delim = delim || '';
for (var i = 0, length = nodes.length; i < length; i++) { buf += this.visit(nodes[i]); if (delim && i < length - 1) buf += this.emit(delim); }
return buf; };
|