You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by jo...@apache.org on 2021/11/15 23:04:53 UTC

[royale-compiler] 05/05: formatter: minor cleanup of off/on tags for AS3

This is an automated email from the ASF dual-hosted git repository.

joshtynjala pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git

commit 9fb3b29369069dae30574548ce877c16ff3c362d
Author: Josh Tynjala <jo...@apache.org>
AuthorDate: Mon Nov 15 15:02:38 2021 -0800

    formatter: minor cleanup of off/on tags for AS3
---
 .../org/apache/royale/formatter/FORMATTER.java     | 24 +++++++++-------------
 .../apache/royale/formatter/TestFormatterOff.java  |  6 +++---
 2 files changed, 13 insertions(+), 17 deletions(-)

diff --git a/formatter/src/main/java/org/apache/royale/formatter/FORMATTER.java b/formatter/src/main/java/org/apache/royale/formatter/FORMATTER.java
index 6a80272..1f4d27a 100644
--- a/formatter/src/main/java/org/apache/royale/formatter/FORMATTER.java
+++ b/formatter/src/main/java/org/apache/royale/formatter/FORMATTER.java
@@ -810,23 +810,10 @@ public class FORMATTER {
 					case ASTokenTypes.TOKEN_RESERVED_WORD_EACH:
 					case ASTokenTypes.TOKEN_RESERVED_WORD_EXTENDS:
 					case ASTokenTypes.TOKEN_RESERVED_WORD_IMPLEMENTS:
-					case ASTokenTypes.HIDDEN_TOKEN_MULTI_LINE_COMMENT: {
-						// needs an extra space before the token
-						requiredSpace = true;
-						break;
-					}
+					case ASTokenTypes.HIDDEN_TOKEN_MULTI_LINE_COMMENT:
 					case ASTokenTypes.HIDDEN_TOKEN_SINGLE_LINE_COMMENT: {
 						// needs an extra space before the token
 						requiredSpace = true;
-
-						String trimmed = token.getText().substring(2).trim();
-						if (!skipFormatting && FORMATTER_TAG_OFF.equals(trimmed)) {
-							skipFormatting = true;
-						} else if (skipFormatting && FORMATTER_TAG_ON.equals(trimmed)) {
-							skipFormatting = false;
-							numRequiredNewLines = 0;
-							requiredSpace = false;
-						}
 						break;
 					}
 					case ASTokenTypes.TOKEN_OPERATOR_EQUAL:
@@ -1330,6 +1317,15 @@ public class FORMATTER {
 					}
 					case ASTokenTypes.HIDDEN_TOKEN_SINGLE_LINE_COMMENT: {
 						numRequiredNewLines = Math.max(numRequiredNewLines, 1);
+
+						String trimmed = token.getText().substring(2).trim();
+						if (!skipFormatting && FORMATTER_TAG_OFF.equals(trimmed)) {
+							skipFormatting = true;
+							appendNewLines(builder, 1);
+						} else if (skipFormatting && FORMATTER_TAG_ON.equals(trimmed)) {
+							skipFormatting = false;
+							numRequiredNewLines = 0;
+						}
 						break;
 					}
 					case ASTokenTypes.TOKEN_ASDOC_COMMENT:
diff --git a/formatter/src/test/java/org/apache/royale/formatter/TestFormatterOff.java b/formatter/src/test/java/org/apache/royale/formatter/TestFormatterOff.java
index 27f0561..84710e6 100644
--- a/formatter/src/test/java/org/apache/royale/formatter/TestFormatterOff.java
+++ b/formatter/src/test/java/org/apache/royale/formatter/TestFormatterOff.java
@@ -34,14 +34,14 @@ public class TestFormatterOff extends BaseFormatterTests {
 		formatter.maxPreserveNewLines = 2;
 		String result = formatter.formatActionScriptText(
 		// @formatter:off
-			"// @formatter:off\n" +
+			"\t// @formatter:off\n" +
 			"for(var i:int=0;i<3;i++){\n" +
 			"\ttrace(i)//print to console\n" +
 			"\n" +
 			"\n" +
 			"\n" +
 			"}\n" +
-			"// @formatter:on\n" +
+			"\t// @formatter:on\n" +
 			"for(var i:int=0;i<3;i++){\n" +
 			"\ttrace(i)//print to console\n" +
 			"\n" +
@@ -60,7 +60,7 @@ public class TestFormatterOff extends BaseFormatterTests {
 				"\n" +
 				"\n" +
 				"}\n" +
-				"// @formatter:on\n" +
+				"\t// @formatter:on\n" +
 				"for (var i:int = 0; i < 3; i++)\n" +
 				"{\n" +
 				"  trace(i); // print to console\n" +