Template = imports.JsTemplate.Template.Template;
-Options = imports.Options.Options;
-Parser = imports.Parser.Parser;
+Parser = imports.Parser.Parser;
+TextStream = imports.TextStream.TextStream;
TokenReader = imports.TokenReader.TokenReader;
TokenStream = imports.TokenStream.TokenStream;
Symbol = imports.Symbol.Symbol;
// should not realy be here -- or anywhere...??
-
+Options = false; // refer to this everywhere!
BuildDocs = {
srcFiles : [],
- build : function (Options)
+
+ build : function (opts)
{
-
+ Options = opts;
Options.init();
Options.LOG.inform("JsDoc Toolkit main() running at "+new Date()+".");
//Options.LOG.inform("With options: ");
- if (!File.isDirectory(Options.cacheDirectory)) {
+ if (Options.cacheDirectory.length && !File.isDirectory(Options.cacheDirectory)) {
File.mkdir(Options.cacheDirectory)
}
}
for (var i = 0; i < Options.src.length; i++) {
- this.srcFiles = this.srcFiles.concat(
+ // add to sourcefiles..
- File.list(Options.src[i] ).filter(
- function($) {
- var thisExt = $.split(".").pop().toLowerCase();
- return (ext.indexOf(thisExt) > -1); // || thisExt in JSDOC.handlers);
- // we're only interested in files with certain extensions
- }
- )
- );
+ File.list(Options.src[i] ).forEach($) {
+ if (Options['exclude-src'].indexOf($) > -1) {
+ return;
+ }
+ var thisExt = $.split(".").pop().toLowerCase();
+ if (ext.indexOf(thisExt) < 0) {
+ return;
+ }
+ this.srcFiles.push(Options.src[i] + '/' + $);
+ });
+
}
-
+ Seed.print(JSON.stringify(this.srcFiles, null,4));Seed.quit();
return this.srcFiles;
},
var src = ''
try {
+ Options.LOG.warn("reading : " + srcFile);
src = File.read(srcFile);
}
catch(e) {
- LOG.warn("Can't read source file '"+srcFile+"': "+e.message);
+ Options.LOG.warn("Can't read source file '"+srcFile+"': "+e.message);
continue;
}
-
- var tr = new TokenReader();
- var ts = new TokenStream(tr.tokenize(src));
+ var txs = new TextStream(src);
+
+ var tr = new TokenReader({ keepComments : true, keepWhite : true });
+
+ var ts = new TokenStream(tr.tokenize(txs));
Parser.parse(ts, srcFile);