X-Git-Url: http://git.roojs.org/?p=gnome.introspection-doc-generator;a=blobdiff_plain;f=JSDOC%2FTokenReader.js;h=f8bf8750d82c7d370bdbeccd2890cc365fc7d503;hp=9fe4fe75f81da11e8e8b14ddaece4de9a5514d98;hb=75e06430ca5dcb9ec1aca8d4f9cc209fc37bcd0c;hpb=be3d4a4a3e6d655ab6381b396349025d0c63162f diff --git a/JSDOC/TokenReader.js b/JSDOC/TokenReader.js index 9fe4fe7..f8bf875 100644 --- a/JSDOC/TokenReader.js +++ b/JSDOC/TokenReader.js @@ -464,12 +464,25 @@ const TokenReader = XObject.define( ) ) { var regex = stream.next(); - + var in_brace = false; while (!stream.look().eof) { + + if (stream.look() == "[") { // escape sequence + in_brace = true; + continue; + } + + if (in_brace && stream.look() == "[") { // escape sequence + in_brace = true; + continue; + } + if (stream.look() == "\\") { // escape sequence regex += stream.next(2); + continue; } - else if (stream.look() == "/") { + + if (!in_brace && stream.look() == "/") { regex += stream.next(); while (/[gmi]/.test(stream.look())) { @@ -479,9 +492,9 @@ const TokenReader = XObject.define( tokens.push(new Token(regex, "REGX", "REGX", this.line)); return true; } - else { - regex += stream.next(); - } + + regex += stream.next(); + } // error: unterminated regex }