diff options
| -rw-r--r-- | src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java | 7 | ||||
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/frontends/java/ExpressionReadingTests.java | 5 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java index f3a4a1f..4f08151 100644 --- a/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java +++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaExpressionReader.java @@ -73,6 +73,9 @@ public class JavaExpressionReader { case ASTNode.TYPE_LITERAL: return readTypeLiteral((TypeLiteral)expression); + case ASTNode.PARENTHESIZED_EXPRESSION: + return readParenthesizedExpression((ParenthesizedExpression)expression); + case ASTNode.SIMPLE_NAME: return readSimpleName((SimpleName)expression); @@ -155,6 +158,10 @@ public class JavaExpressionReader { return literal(erasure(typeOf(expression.getType()))); } + private ExpressionNode readParenthesizedExpression(ParenthesizedExpression expression) { + return readExpressionWithoutBoxing(expression.getExpression()); + } + private ExpressionNode readSimpleName(SimpleName expression) { IBinding binding = expression.resolveBinding(); if (binding.getKind() == IBinding.VARIABLE) { diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/ExpressionReadingTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/ExpressionReadingTests.java index 43d20b7..9291895 100644 --- a/src/test/java/org/zwobble/couscous/tests/frontends/java/ExpressionReadingTests.java +++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/ExpressionReadingTests.java @@ -47,6 +47,11 @@ public class ExpressionReadingTests { } @Test + public void canReadParenthesizedExpression() { + assertEquals(literal(42), readIntExpression("(42)")); + } + + @Test public void canReadThisReference() { assertEquals( thisReference(ScalarType.of("com.example.Example")), |
