X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=JSDOC%2FCompressWhite.js;h=6b08e160400f68b030fe69802fdae95460a35f2f;hb=d56985f1898989ac6236528f762e69837f185914;hp=007d9d9197ae3ed1d5514a34cfb7bfb48b6bc328;hpb=9ca50d5b94d7454999de0150932bba0283ad89f5;p=gnome.introspection-doc-generator diff --git a/JSDOC/CompressWhite.js b/JSDOC/CompressWhite.js index 007d9d9..6b08e16 100644 --- a/JSDOC/CompressWhite.js +++ b/JSDOC/CompressWhite.js @@ -32,9 +32,18 @@ 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")) { + if (tok.type == "NAME") { //var tokident = ts.look(-1).data + tok.data + ts.look(1).data + ts.look(2).data; // a = new function() {} if (ts.lookTok(1).data == '=' && ts.lookTok(2).name == 'NEW' && @@ -48,7 +57,7 @@ CompressWhite = function (ts, packer) ts.balance("{"); // if next is not ';' -> make it so... - 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.lookTok(1,true).name == "NEWLINE") { ts.look(0).outData = ts.cur().data +";"; } // restore.. @@ -66,13 +75,35 @@ CompressWhite = function (ts, packer) ts.balance("{"); // if next is not ';' -> make it so... // although this var a=function(){},v,c; causes - if (!ts.lookTok(1).isData(';') && !ts.lookTok(1).isData('}') && ts.lookTok(1,true).isLineBreak()) { - ts.cur().outData = ts.look(0).data+";"; + if (ts.lookTok(1).data != ';' && ts.lookTok(1).data != '}' && ts.lookTok(1,true).name == "NEWLINE") { + ts.look(0).outData = ts.look(0).data+";"; } // restore.. ts.cursor = cu; continue; } + // next item is a name.. + if ((ts.lookTok(1).type == 'NAME' || ts.lookTok(1).type == 'KEYW' ) && ts.look(1,true).name == "NEWLINE") { + // preserve linebraek + ts.look(0).outData = ts.look(0).data+"\n"; + } + // method call followed by name.. + 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.look(1,true).name == "NEWLINE") { + + ts.look(0).outData = ts.look(0).data+"\n"; + } + // restore.. + ts.cursor = cu; + continue; + } + + // function a () { ... }; /* if (ts.look(-1).isTypeN(Script.TOKfunction) && ts.look(1).isTypeN(Script.TOKlparen)) { @@ -95,7 +126,7 @@ CompressWhite = function (ts, packer) // a = { .... - if (ts.look(1).data == '=' && ts.look(2).data == '{')) { + if (ts.lookTok(1).data == '=' && ts.lookTok(2).data == '{') { // freeze time.. //println("----------*** 3 *** --------------"); var cu = ts.cursor; @@ -105,7 +136,7 @@ CompressWhite = function (ts, packer) } // if next is not ';' -> make it so... - if (!ts.look(1).data == ';' && ts.look(1).data != '}' && ts.look(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 +";"; } // restore.. @@ -129,14 +160,14 @@ CompressWhite = function (ts, packer) case "BREAK": case "CONTINUE": // if next item is a identifier.. - if (ts.look(1).isTypeN(Script.TOKidentifier) || ts.look(1).data.match(/^[a-z]+$/i) ) { // as include is a keyword for us!! + if (ts.lookTok(1).type == "NAME" || ts.lookTok(1).data.match(/^[a-z]+$/i) ) { // as include is a keyword for us!! tok.outData = tok.data + " "; } continue; case "RETURN": // if next item is not a semi; (or } - if (ts.look(1).data == ';' || ts.look(1).data == '}') { + if (ts.lookTok(1).data == ';' || ts.lookTok(1).data == '}') { continue; } tok.outData = tok.data + " "; @@ -145,7 +176,7 @@ CompressWhite = function (ts, packer) case "ELSE": // if next item is not a semi; (or } - if (!ts.look(1).isTypeN(Script.TOKif)) { + if (!ts.lookTok(1).name == "IF") { continue; } @@ -155,12 +186,12 @@ CompressWhite = function (ts, packer) case "++": // if previous was a plus or next is a + add a space.. case "--": // if previous was a - or next is a - add a space.. - var p = (Script.TOKminusminus == tok.tokN ? '-' : '+'); + var p = (tok.data == "--" ? '-' : '+'); - if (ts.look(1).data == p) { + if (ts.lookTok(1).data == p) { tok.outData = tok.data + " "; } - if (ts.look(-1).data == p) { + if (ts.lookTok(-1).data == p) { tok.outData = " " + tok.data; } @@ -188,7 +219,7 @@ CompressWhite = function (ts, packer) tok.outData = tok.data + " "; } continue; - case ";" + case ";": //remove semicolon before brace -- //if(ts.look(1).isTypeN(Script.TOKrbrace)) { // tok.outData = ''; @@ -211,12 +242,13 @@ CompressWhite = function (ts, packer) out = ''; while (true) { var tok = ts.nextTok(); + if (!tok) { break; } - if (tok.type == "NAME" && tok.identifier && tok.identifier.mungedValue.length) { + if (tok.type == "NAME" && tok.identifier && tok.identifier.mungedValue && tok.identifier.mungedValue.length) { //f.write(tok.identifier.mungedValue); out += tok.identifier.mungedValue; continue; @@ -224,14 +256,14 @@ CompressWhite = function (ts, packer) // at this point we can apply a text translation kit... - if (tok.type == 'STRN') && (tok.name== 'DOUBLE_QUOTE') { - if (packer.stringHandler) { + if ((tok.type == 'STRN') && (tok.name== 'DOUBLE_QUOTE')) { + if (packer && packer.stringHandler) { out += packer.stringHandler(tok); continue; } } - //f.write(tok.outData); - out += tok.outData; + + out += tok.outData !== false ? tok.outData : tok.data; if ((tok.outData == ';') && (out.length - outoff > 255)) { outoff = out.length;