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 2022/12/06 17:13:47 UTC
[royale-compiler] 02/05: formatter: nullish coalescing operator
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 aa775145095fccc63dc77b3d70eaffa4565a9cd3
Author: Josh Tynjala <jo...@apache.org>
AuthorDate: Tue Dec 6 08:46:57 2022 -0800
formatter: nullish coalescing operator
---
.../apache/royale/formatter/ASTokenFormatter.java | 2 ++
.../royale/formatter/TestLogicalOperators.java | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+)
diff --git a/formatter/src/main/java/org/apache/royale/formatter/ASTokenFormatter.java b/formatter/src/main/java/org/apache/royale/formatter/ASTokenFormatter.java
index 903c0d4f6..0ae559168 100644
--- a/formatter/src/main/java/org/apache/royale/formatter/ASTokenFormatter.java
+++ b/formatter/src/main/java/org/apache/royale/formatter/ASTokenFormatter.java
@@ -385,6 +385,7 @@ public class ASTokenFormatter extends BaseTokenFormatter {
case ASTokenTypes.TOKEN_OPERATOR_BITWISE_XOR:
case ASTokenTypes.TOKEN_OPERATOR_LOGICAL_AND:
case ASTokenTypes.TOKEN_OPERATOR_LOGICAL_OR:
+ case ASTokenTypes.TOKEN_OPERATOR_NULLISH_COALESCING:
case ASTokenTypes.TOKEN_OPERATOR_PLUS_ASSIGNMENT:
case ASTokenTypes.TOKEN_OPERATOR_MINUS_ASSIGNMENT:
case ASTokenTypes.TOKEN_OPERATOR_MULTIPLICATION_ASSIGNMENT:
@@ -869,6 +870,7 @@ public class ASTokenFormatter extends BaseTokenFormatter {
case ASTokenTypes.TOKEN_OPERATOR_BITWISE_XOR:
case ASTokenTypes.TOKEN_OPERATOR_LOGICAL_AND:
case ASTokenTypes.TOKEN_OPERATOR_LOGICAL_OR:
+ case ASTokenTypes.TOKEN_OPERATOR_NULLISH_COALESCING:
case ASTokenTypes.TOKEN_OPERATOR_PLUS_ASSIGNMENT:
case ASTokenTypes.TOKEN_OPERATOR_MINUS_ASSIGNMENT:
case ASTokenTypes.TOKEN_OPERATOR_MULTIPLICATION_ASSIGNMENT:
diff --git a/formatter/src/test/java/org/apache/royale/formatter/TestLogicalOperators.java b/formatter/src/test/java/org/apache/royale/formatter/TestLogicalOperators.java
index dcf6e03e1..2839ddc2e 100644
--- a/formatter/src/test/java/org/apache/royale/formatter/TestLogicalOperators.java
+++ b/formatter/src/test/java/org/apache/royale/formatter/TestLogicalOperators.java
@@ -123,4 +123,24 @@ public class TestLogicalOperators extends BaseFormatterTests {
// @formatter:on
result);
}
+
+ @Test
+ public void testNullishCoalescingOperator() {
+ FormatterSettings settings = new FormatterSettings();
+ settings.insertSpaceBeforeAndAfterBinaryOperators = true;
+ settings.placeOpenBraceOnNewLine = true;
+ settings.insertSpaces = false;
+ ASTokenFormatter formatter = new ASTokenFormatter(settings);
+ String result = formatter.format("file.as",
+ // @formatter:off
+ "a??b;",
+ // @formatter:on
+ problems
+ );
+ assertEquals(
+ // @formatter:off
+ "a ?? b;",
+ // @formatter:on
+ result);
+ }
}