JSDOC/CompressWhite.js
[gnome.introspection-doc-generator] / JSDOC / CompressWhite.js
index 5f918b8..a510722 100644 (file)
@@ -32,7 +32,16 @@ CompressWhite =  function (ts, packer)
             
             
         }
-        
+        if (tok.data == "}")  {
+            
+            if (ts.lookTok(1).type == 'NAME' && ts.look(1,true).name == "NEWLINE") {
+            
+                ts.look(0).outData = ts.look(0).data+"\n";
+            }
+            // restore.. 
+            
+            continue;
+        }
         // add semi-colon's where linebreaks are used... - not foolproof yet.!
         if (tok.type == "NAME")  {
             //var tokident = ts.look(-1).data + tok.data + ts.look(1).data +  ts.look(2).data;
@@ -62,13 +71,37 @@ CompressWhite =  function (ts, packer)
                 //println("got = function() ");
                 var cu = ts.cursor;
                 
-                ts.balance("(");
-                ts.balance("{");
+                 if (!ts.balance("(") ){
+                    ts.dump(cu-40, cu);
+                    print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+                    ts.dump(cu, cu+40);
+                    
+                    throw "could not find end lbrace!!!";
+                }
+                print("AFTER BALANCE "(");
+                ts.dump(cu, ts.cursor+2);
+                
+                 if (!ts.balance("{") ){
+                    ts.dump(cu-40, cu);
+                    print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+                    ts.dump(cu, cu+40);
+                    
+                    throw "could not find end lbrace!!!";
+                }
+                print('FN: '+ts.tokens[cu].toString());
+                print('F1: '+ts.lookTok(1).toString());
+                print('F2: '+ts.look(1,true).toString());
+                
                 // if next is not ';' -> make it so...
                 // although this var a=function(){},v,c; causes 
-                if (ts.lookTok(1).data != ';' && ts.lookTok(1).data != '}' && ts.lookTok(1,true).name == "NEWLINE") {
+                if (ts.lookTok(1).data != ';' && ts.lookTok(1).data != '}' && ts.look(1,true).name == "NEWLINE") {
+                    
                     ts.look(0).outData = ts.look(0).data+";";
+                    print("ADDING SEMI: " + ts.look(0).toString());
+                    //ts.dump(cu, ts.cursor+2);
                 }
+                
+                 ts.dump(cu, ts.cursor+2);
                 // restore.. 
                 ts.cursor = cu;
                 continue;
@@ -79,16 +112,19 @@ CompressWhite =  function (ts, packer)
                 ts.look(0).outData = ts.look(0).data+"\n";
             }
             // method call followed by name..
-            if (tok.lookTok(1).data == "(")  {
+            if (ts.lookTok(1).data == "(")  {
                 var cu = ts.cursor;
                 
                 ts.balance("(");
                  // although this var a=function(){},v,c; causes 
-                if (ts.lookTok(1).type == 'NAME' && ts.lookTok(1,true).name == "NEWLINE") {
+                
+                if (ts.lookTok(1).type == 'NAME' && ts.look(1,true).name == "NEWLINE") {
+                
                     ts.look(0).outData = ts.look(0).data+"\n";
                 }
                 // restore.. 
                 ts.cursor = cu;
+                continue;
             }
             
             
@@ -120,10 +156,14 @@ CompressWhite =  function (ts, packer)
                 var cu = ts.cursor;
                 
                 if (!ts.balance("{") ){
+                    ts.dump(cu-40, cu);
+                    print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
+                    ts.dump(cu, cu+40);
+                    
                     throw "could not find end lbrace!!!";
                 }
                 // if next is not ';' -> make it so...
-
+                
                 if (ts.lookTok(1).data != ';' && ts.lookTok(1).data != '}' && ts.look(1,true).name=="NEWLINE") {
                     ts.look(0).outData = ts.look(0).data +";";
                 }
@@ -133,6 +173,8 @@ CompressWhite =  function (ts, packer)
             }
             
             // any more??
+            // a = function(....) { } 
+          
         }
         
         
@@ -230,6 +272,7 @@ CompressWhite =  function (ts, packer)
     out = '';
     while (true) {
         var tok = ts.nextTok();
+           
         if (!tok) {
             break;
         }
@@ -249,7 +292,7 @@ CompressWhite =  function (ts, packer)
                 continue;
             }
         }
-        //f.write(tok.outData);
+     
         out += tok.outData !== false ? tok.outData : tok.data;
         
         if ((tok.outData == ';') && (out.length - outoff > 255)) {