node-query/node_modules/jsdoc/plugins/partial.js

32 lines
780 B
JavaScript
Raw Normal View History

2014-10-20 16:56:45 -04:00
/**
@overview Adds support for reusable partial jsdoc files.
@module plugins/partial
@author Ludo Antonov <ludo@hulu.com>
*/
2014-10-22 10:11:40 -04:00
'use strict';
2014-10-20 16:56:45 -04:00
var fs = require('jsdoc/fs');
var path = require('path');
exports.handlers = {
2015-01-28 15:33:44 -05:00
/**
* Include a partial jsdoc
*
* @param e
* @param e.filename
* @param e.source
* @example
* @partial "partial_doc.jsdoc"
*/
2014-10-20 16:56:45 -04:00
beforeParse: function(e) {
e.source = e.source.replace(/(@partial \".*\")+/g, function($) {
2015-01-28 15:33:44 -05:00
var pathArg = $.match(/\".*\"/)[0].replace(/"/g, '');
var fullPath = path.join(e.filename, '..', pathArg);
2014-10-20 16:56:45 -04:00
2015-01-28 15:33:44 -05:00
var partialData = fs.readFileSync(fullPath, global.env.opts.encoding);
2014-10-20 16:56:45 -04:00
return partialData;
});
}
};