pack.js
[gnome.introspection-doc-generator] / pack.js
diff --git a/pack.js b/pack.js
index 77e0e25..bdd5734 100755 (executable)
--- a/pack.js
+++ b/pack.js
@@ -5,7 +5,7 @@
  *
  * compresses files listed as arguments and outputs result
  */
-
+TextStream      = imports['JSDOC/TextStream.js'].TextStream;
 TokenReader     = imports['JSDOC/TokenReader.js'].TokenReader;
 ScopeParser     = imports['JSDOC/ScopeParser.js'].ScopeParser;
 TokenStream     = imports['JSDOC/TokenStream.js'].TokenStream;
@@ -16,9 +16,11 @@ File = imports.File.File;
 function pack(str)
 {
     
-    var tr = new  TokenReader();
-    var toks = tr.tokenize(str,false); // dont merge xxx + . + yyyy etc.
-    var sp = new  ScopeParser(new   TokenStream(toks));
+    var tr = new  TokenReader(  { keepDocs :true, keepWhite : true,  keepComments : true, sepIdents : true });
+    var toks = tr.tokenize(new TextStream(str) ); // dont merge xxx + . + yyyy etc.
+    var ts = new   TokenStream(toks);
+   // ts.dump();
+    var sp = new  ScopeParser(ts);
     sp.buildSymbolTree();
     sp.mungeSymboltree();
     print(sp.warnings.join("\n"));
@@ -33,6 +35,10 @@ args.shift(); //seed
 args.shift(); // pack.js
 var files = [];
 var outfn = '';
+if (!args.length) {
+    print( "no files selected");
+    Seed.quit();
+}
 for(var i =0; i < args.length;i++) {
     if (args[i] == '-o') {
         outfn = args[i+1];
@@ -41,6 +47,7 @@ for(var i =0; i < args.length;i++) {
     }
     files.push(args[i]);
 }
+print(files.join(', '));
 if (!files.length) {
     throw "no files selected";
 }