JSDOC/TokenReader.js
[gnome.introspection-doc-generator] / JSDOC / CompressWhite.vala
index 0b18399..053713c 100644 (file)
@@ -17,6 +17,8 @@ namespace JSDOC
        {
                //keepWhite = keepWhite || false;
                ts.rewind();
+               //ts.dumpAllFlat(); GLib.Process.exit(1);
+               
                //var str = File.read(fn);
                var rep_var = 1;
        
@@ -71,16 +73,21 @@ namespace JSDOC
                                ts.cursor = cu;
                                continue;
                            }
-                           // a = function() { ...
+                           // a = function() { ... -- add a semi colon a tthe end if not one there..
                               
                            if (ts.lookTok(1).data == "=" &&  ts.lookTok(2).name == "FUNCTION") {
                                // freeze time.. 
                                //println("got = function() ");
-                               var cu = ts.cursor;
-                               ts.cursor+=2; // move two along, and balance...
-                               
-                               if (ts.balance("(").size < 1 ){
+                               tok = ts.nextTok();
+                               tok = ts.nextTok();
                                
+                               //tok = ts.next();
+                                var cu = ts.cursor;
+                                       //print("NEXT = should be brac: %s\n", ts.lookTok(1).asString());
+                                         
+                              //print("cursor = %d", ts.cursor);
+                                 
+                               if (ts.lookTok(1).data != "(" || ts.balance("(").size < 1 ){
                                        print("balance ( issue on line %d\n", ts.toArray().get(cu).line);
                                    ts.dump(cu-40, cu+2);
                                    print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");
@@ -88,10 +95,17 @@ namespace JSDOC
                                    
                                    throw new CompressWhiteError.BRACE( "could not find end lbrace!!!" );
                                }
+                               //print("cursor = %d", ts.cursor);
+                               //print("CUR = should be ): %s\n", ts.lookTok(0).asString());
+
+                               tok = ts.nextTok();
+                               //print("CUR = should be {: %s\n", ts.lookTok(0).asString());                           
+                               cu = ts.cursor; // set the cursor to here.. so the next bit of the code will check inside the method.
+                               //print("cursor = %d", ts.cursor);
                                //print("AFTER BALANCE (");
                                //ts.dump(cu, ts.cursor);
                                //ts.cursor--; // cursor at the (
-                               if (ts.balance("{").size < 1 ){
+                               if (tok.data != "{" || ts.balance("{").size < 1 ){
 
                                    ts.dump(cu-40, cu);
                                    print(">>>>>>>>>>>>>>>>>HERE>>>>>>>>>>>>");