lib/engine.js
function _process(templates, params, cb) {
    var _templates = _.extend(templates, {}), // process template copies, not the originals
      tasks = {};

    _.keys(_templates).forEach(function (key) {
      tasks[key] = function (cb) {
        _templates[key].process(params, function (data) {
          cb(null, data);
        });
      };
    });

    async.parallel(tasks, function (err, results) {
      cb(results);
    });
  }
function _process(templates, params, cb) {
    var _templates = _.extend(templates, {}), // process template copies, not the originals
      tasks = {};

    _.keys(_templates).forEach(function (key) {
      tasks[key] = function (cb) {
        _templates[key].process(params, function (data) {
          cb(null, data);
        });
      };
    });

    async.parallel(tasks, function (err, results) {
      cb(results);
    });
  }
function _process ( templates , params , cb ) { var _templates = _ . extend ( templates , { } ) , // process template copies, not the originals tasks = { } ; _ . keys ( _templates ) . forEach ( function ( key ) { tasks [ key ] = function ( cb ) { _templates [ key ] . process ( params , function ( data ) { cb ( null , data ) ; } ) ; } ; } ) ; async . parallel ( tasks , function ( err , results ) { cb ( results ) ; } ) ; }
merge a set of params to a set of templates
merge a set of params to a set of templates