X-Git-Url: http://git.roojs.org/?p=gnome.introspection-doc-generator;a=blobdiff_plain;f=JSDOC%2FTokenStream.js;h=7b3328f3eefe541c02d2d850d23810080890d27e;hp=8438da74e2c9a033f052492119d7fda18cd936d7;hb=759466942f163998373b165f409fd9cfaaa9910f;hpb=119130f4ced43d4ead5763cecb70c7d153bfe306 diff --git a/JSDOC/TokenStream.js b/JSDOC/TokenStream.js index 8438da7..7b3328f 100644 --- a/JSDOC/TokenStream.js +++ b/JSDOC/TokenStream.js @@ -138,6 +138,7 @@ TokenStream = XObject.define( /** * @return {Token|null} + * next token (with white space) */ @@ -185,16 +186,19 @@ TokenStream = XObject.define( */ balance : function(/**String*/start, /**String*/stop) { - start = typeof(Lang.matching(start)) == 'undefined' ? Lang.punc(start) : start; + + start = typeof(Lang.punc(start)) == 'undefined' ? start : Lang.punc(start); if (!stop) stop = Lang.matching(start); var depth = 0; var got = []; var started = false; - Seed.print("STOP:" + stop); + //Seed.print("START:" + start); + //Seed.print("STOP:" + stop); while ((token = this.look())) { if (token.is(start)) { + // Seed.print("balance: START : " + depth + " " + token.data); depth++; started = true; } @@ -205,7 +209,8 @@ TokenStream = XObject.define( if (token.is(stop)) { depth--; - if (depth == 0) return got; + // Seed.print("balance: STOP: " + depth + " " + token.data); + if (depth < 1) return got; } if (!this.next()) break; } @@ -264,7 +269,8 @@ TokenStream = XObject.define( end = Math.min(end || this.tokens.length, this.tokens.length); var out=''; for (var i =start;i < end; i++) { - out += this.tokens[i].data; + + out += (this.tokens[i].outData == false) ? this.tokens[i].data : this.tokens[i].outData; }; print(out); }