aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/zwobble/couscous/frontends/java/JavaStatementReader.java4
-rw-r--r--src/main/java/org/zwobble/couscous/frontends/java/Scope.java4
2 files changed, 5 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaStatementReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaStatementReader.java
index eecba36..d03c7c0 100644
--- a/src/main/java/org/zwobble/couscous/frontends/java/JavaStatementReader.java
+++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaStatementReader.java
@@ -95,9 +95,7 @@ class JavaStatementReader {
private List<StatementNode> readSwitchStatement(SwitchStatement switchStatement) {
ExpressionNode switchValue = readExpressionWithoutBoxing(switchStatement.getExpression());
- LocalVariableDeclarationNode switchValueAssignment = scope.temporaryVariable(
- switchValue.getType(),
- switchValue);
+ LocalVariableDeclarationNode switchValueAssignment = scope.temporaryVariable(switchValue);
List<Statement> statements = switchStatement.statements();
List<Map.Entry<Optional<ExpressionNode>, List<StatementNode>>> cases = new ArrayList<>();
diff --git a/src/main/java/org/zwobble/couscous/frontends/java/Scope.java b/src/main/java/org/zwobble/couscous/frontends/java/Scope.java
index 1ca8599..7ddc8ca 100644
--- a/src/main/java/org/zwobble/couscous/frontends/java/Scope.java
+++ b/src/main/java/org/zwobble/couscous/frontends/java/Scope.java
@@ -74,6 +74,10 @@ public class Scope {
return LocalVariableDeclarationNode.localVariableDeclaration(declaration, initialValue);
}
+ public LocalVariableDeclarationNode temporaryVariable(ExpressionNode initialValue) {
+ return temporaryVariable(initialValue.getType(), initialValue);
+ }
+
public LocalVariableDeclarationNode temporaryVariable(TypeName type, ExpressionNode initialValue) {
return localVariable("_couscous_tmp_" + temporaryCounter.next(), type, initialValue);
}