From e35bfaf96cc597bfdd3c22c08e7c4ca617de1af6 Mon Sep 17 00:00:00 2001 From: Martin Carlberg Date: Tue, 23 Apr 2013 15:48:25 +0200 Subject: [PATCH] Fixed: Better looking code generation with correct indentation for 'if' - 'else if' statements --- Objective-J/ObjJAcornCompiler.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Objective-J/ObjJAcornCompiler.js b/Objective-J/ObjJAcornCompiler.js index 9dc8bf64c..3ace9f96f 100644 --- a/Objective-J/ObjJAcornCompiler.js +++ b/Objective-J/ObjJAcornCompiler.js @@ -572,14 +572,16 @@ IfStatement: function(node, st, c) { indentation += indentStep; c(node.consequent, st, "Statement"); indentation = indentation.substring(indentationSpaces); - if (node.alternate) { + var alternate = node.alternate; + if (alternate) { + var alternateNotIf = alternate.type !== "IfStatement"; if (generate) { CONCAT(buffer, indentation); - CONCAT(buffer, "else\n"); + CONCAT(buffer, alternateNotIf ? "else\n" : "else "); } - indentation += indentStep; - c(node.alternate, st, "Statement"); - indentation = indentation.substring(indentationSpaces); + if (alternateNotIf) indentation += indentStep; + c(alternate, st, "Statement"); + if (alternateNotIf) indentation = indentation.substring(indentationSpaces); } }, LabeledStatement: function(node, st, c) {