diff --git a/lib/lexer.js b/lib/lexer.js index caba6b85..a3ec090d 100644 --- a/lib/lexer.js +++ b/lib/lexer.js @@ -360,7 +360,7 @@ }; Lexer.prototype.sanitizeHeredoc = function(doc, options) { var _d, attempt, indent, match; - while (match = HEREDOC_INDENT.exec(doc)) { + while ((match = HEREDOC_INDENT.exec(doc))) { attempt = (typeof (_d = match[2]) !== "undefined" && _d !== null) ? match[2] : match[3]; if (!indent || attempt.length < indent.length) { indent = attempt; diff --git a/lib/nodes.js b/lib/nodes.js index 0a06d147..d9ad99c9 100644 --- a/lib/nodes.js +++ b/lib/nodes.js @@ -628,7 +628,7 @@ if (this.fromNum && this.toNum && Math.abs(+this.fromNum - +this.toNum) <= 20) { range = (function() { _c = []; - for (var _b = +this.fromNum; +this.fromNum <= +this.toNum ? _b <= +this.toNum : _b >= +this.toNum; +this.fromNum <= +this.toNum ? _b += 1 : _b -= 1){ _c.push(_b) }; + for (var _b = +this.fromNum; +this.fromNum <= +this.toNum ? _b <= +this.toNum : _b >= +this.toNum; +this.fromNum <= +this.toNum ? _b += 1 : _b -= 1){ _c.push(_b); } return _c; }).call(this); if (this.exclusive) { @@ -646,7 +646,7 @@ clause = ("" + this.fromVar + " <= " + this.toVar + " ?"); body = ("var " + i + " = " + this.fromVar + "; " + clause + " " + i + " <" + this.equals + " " + this.toVar + " : " + i + " >" + this.equals + " " + this.toVar + "; " + clause + " " + i + " += 1 : " + i + " -= 1"); } - post = ("{ " + (result) + ".push(" + i + ") };\n" + (idt) + "return " + result + ";\n" + o.indent); + post = ("{ " + (result) + ".push(" + i + "); }\n" + (idt) + "return " + result + ";\n" + o.indent); return "(function() {" + (pre) + "\n" + (idt) + "for (" + body + ")" + post + "}).call(this)"; }; return RangeNode; diff --git a/src/lexer.coffee b/src/lexer.coffee index 45704b92..95d2efe8 100644 --- a/src/lexer.coffee +++ b/src/lexer.coffee @@ -304,7 +304,7 @@ exports.Lexer = class Lexer # Sanitize a heredoc or herecomment by escaping internal double quotes and # erasing all external indentation on the left-hand side. sanitizeHeredoc: (doc, options) -> - while match = HEREDOC_INDENT.exec doc + while (match = HEREDOC_INDENT.exec(doc)) attempt = if match[2]? then match[2] else match[3] indent = attempt if not indent or attempt.length < indent.length doc = doc.replace(new RegExp("^" +indent, 'gm'), '') diff --git a/src/nodes.coffee b/src/nodes.coffee index 4cd904db..0f77d688 100644 --- a/src/nodes.coffee +++ b/src/nodes.coffee @@ -577,7 +577,7 @@ exports.RangeNode = class RangeNode extends BaseNode else clause = "#@fromVar <= #@toVar ?" body = "var #i = #@fromVar; #clause #i <#@equals #@toVar : #i >#@equals #@toVar; #clause #i += 1 : #i -= 1" - post = "{ #{result}.push(#i) };\n#{idt}return #result;\n#o.indent" + post = "{ #{result}.push(#i); }\n#{idt}return #result;\n#o.indent" "(function() {#{pre}\n#{idt}for (#body)#post}).call(this)" #### SliceNode