// like: java -classpath ~/Scripts/js.jar org.mozilla.javascript.tools.shell.Main jsdoc.js examples/test1.js // or: node jsdoc examples/test1.js (function() { // normalise rhino if (typeof load !== 'undefined') { load('lib/rhino-shim.js'); } // global modules global._ = require('underscore'); _.mixin(require('underscore.string')); global.signals = require('signals'); // needed modules var fs = require('fs'), opts = require('jsdoc/options').parse( process.argv.slice(2) ), dumper = require('jsdoc/util/dumper'); // user configuration try { var conf = JSON.parse( fs.readFileSync('./conf.json', 'utf-8') ); } catch (e) { throw('Configuration file cannot be evaluated. '+e); } if (typeof conf.plugins !== 'undefined') { for (var i = 0, len = conf.plugins.length; i < len; i++) { require(conf.plugins[i]); } } if (opts.help) { console.log('USAGE: node main.js yourfile.js'); process.exit(0); } var srcFile = opts._[0]; var src = fs.readFileSync(srcFile, 'utf-8'); var parser = require('jsdoc/parser'); var symbols = parser.parse(src); console.log( dumper.dump(symbols) ); })();