X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=JSDOC%2FCompressWhite.js;h=60e1d28cf923bf9a0d5c0bae4d7429f01e77a9c5;hb=5670ccb0cb1854a9c088b6d45531e95e48015a1e;hp=b8715d8b129a66efec4cb14400cb2eeee75a3e71;hpb=fcc9a27cb9b4d482254b2e6a4d2d79cd13c2f123;p=gnome.introspection-doc-generator diff --git a/JSDOC/CompressWhite.js b/JSDOC/CompressWhite.js index b8715d8..60e1d28 100644 --- a/JSDOC/CompressWhite.js +++ b/JSDOC/CompressWhite.js @@ -8,9 +8,9 @@ @arg packer {Packer} */ -CompressWhite = function (ts, packer) +CompressWhite = function (ts, packer, keepWhite) { - + keepWhite = keepWhite || false; ts.rewind(); //var str = File.read(fn); var rep_var = 1; @@ -21,6 +21,7 @@ CompressWhite = function (ts, packer) break; } if (tok.type == "WHIT") { + continue; //if (tok._isDoc) { // continue; @@ -71,14 +72,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); + //ts.cursor--; // cursor at the ( + 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.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; @@ -247,8 +271,10 @@ CompressWhite = function (ts, packer) var outoff = 0; out.length = ts.slen; // prealloc. out = ''; + var tok; while (true) { - var tok = ts.nextTok(); + + tok = keepWhite ? ts.next() : ts.nextTok(); if (!tok) { break;