aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-11-20 20:06:04 +0000
committerMichael Williamson <mike@zwobble.org>2023-11-20 20:06:21 +0000
commit23c76b64213fbe54dafd5bbf6b9d10efb051d16d (patch)
treeabe5d1ad67570eb270fe8ecae9049363c29b69e9 /src/test/java
parent5a9bf0b81e43a747fccd59dedaeb8432431e4e1a (diff)
Mark mutability of variables up-front
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerAssignTests.java14
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerCallTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerEffectDefinitionTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerFieldAccessTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionDefinitionTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionExpressionTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerIfTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerReferenceTests.java5
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerStructDefinitionTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerSumTypeDefinitionTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerTryTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerVarTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerWhenTests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/stackir/StackCompilerWhileTests.java4
15 files changed, 34 insertions, 33 deletions
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerAssignTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerAssignTests.java
index 7c49af0a..431556a0 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerAssignTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerAssignTests.java
@@ -17,7 +17,7 @@ public class StackCompilerAssignTests {
Typed.reference("x")
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileFunctionStatement(node, context);
@@ -34,7 +34,7 @@ public class StackCompilerAssignTests {
Typed.stringLiteral("hello")
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileFunctionStatement(node, context);
@@ -55,10 +55,10 @@ public class StackCompilerAssignTests {
Typed.reference("x")
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x")
- .addShedVariable("a")
- .addShedVariable("b")
- .addShedVariable("c");
+ .addShedVal("x")
+ .addShedVal("a")
+ .addShedVal("b")
+ .addShedVal("c");
var result = StackCompiler.compileFunctionStatement(node, context);
@@ -82,7 +82,7 @@ public class StackCompilerAssignTests {
Typed.reference("x")
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileFunctionStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerCallTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerCallTests.java
index 0d496ccb..2cf25bb1 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerCallTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerCallTests.java
@@ -25,7 +25,7 @@ public class StackCompilerCallTests {
)
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("f");
+ .addShedVal("f");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerEffectDefinitionTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerEffectDefinitionTests.java
index e167816c..051c03e4 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerEffectDefinitionTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerEffectDefinitionTests.java
@@ -16,7 +16,7 @@ public class StackCompilerEffectDefinitionTests {
var effect = Effects.userDefined(NamespaceName.of("Example", "Project"), "State");
var node = Typed.effectDefinition(effect);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("State");
+ .addShedVal("State");
var result = StackCompiler.compileNamespaceStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFieldAccessTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFieldAccessTests.java
index 23d87b61..4c0821a6 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFieldAccessTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFieldAccessTests.java
@@ -22,7 +22,7 @@ public class StackCompilerFieldAccessTests {
Types.STRING
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("Project");
+ .addShedVal("Project");
var result = StackCompiler.compileExpression(node, context);
@@ -44,7 +44,7 @@ public class StackCompilerFieldAccessTests {
Types.STRING
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("user");
+ .addShedVal("user");
var result = StackCompiler.compileExpression(node, context);
@@ -63,7 +63,7 @@ public class StackCompilerFieldAccessTests {
Types.STRING
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("State");
+ .addShedVal("State");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionDefinitionTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionDefinitionTests.java
index 34656948..d28a3eb5 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionDefinitionTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionDefinitionTests.java
@@ -21,8 +21,8 @@ public class StackCompilerFunctionDefinitionTests {
.addStatement(Typed.expressionStatement(Typed.stringLiteral("hello")))
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("f")
- .addShedVariable("z");
+ .addShedVal("f")
+ .addShedVal("z");
var result = StackCompiler.compileNamespaceStatement(node, context);
@@ -57,7 +57,7 @@ public class StackCompilerFunctionDefinitionTests {
.addStatement(Typed.blockReturn(Typed.stringLiteral("hello")))
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("f");
+ .addShedVal("f");
var result = StackCompiler.compileNamespaceStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionExpressionTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionExpressionTests.java
index b0ab21cc..d14356f7 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionExpressionTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerFunctionExpressionTests.java
@@ -20,8 +20,8 @@ public class StackCompilerFunctionExpressionTests {
.addStatement(Typed.expressionStatement(Typed.stringLiteral("hello")))
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("f")
- .addShedVariable("z");
+ .addShedVal("f")
+ .addShedVal("z");
var result = StackCompiler.compileExpression(node, context);
@@ -54,7 +54,7 @@ public class StackCompilerFunctionExpressionTests {
.addStatement(Typed.blockReturn(Typed.stringLiteral("hello")))
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("f");
+ .addShedVal("f");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerIfTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerIfTests.java
index d9d63f4f..dca0be02 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerIfTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerIfTests.java
@@ -28,7 +28,7 @@ public class StackCompilerIfTests {
Types.INT
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("c");
+ .addShedVal("c");
var result = StackCompiler.compileExpression(node, context);
@@ -69,8 +69,8 @@ public class StackCompilerIfTests {
Types.INT
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("c")
- .addShedVariable("d");
+ .addShedVal("c")
+ .addShedVal("d");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerReferenceTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerReferenceTests.java
index f00631c3..038351c4 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerReferenceTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerReferenceTests.java
@@ -1,6 +1,7 @@
package org.shedlang.compiler.stackir;
import org.junit.jupiter.api.Test;
+import org.shedlang.compiler.ast.typed.BoundVariable;
import org.shedlang.compiler.ast.typed.Typed;
import static org.shedlang.compiler.stackir.instructions.InstructionMatchers.*;
@@ -12,7 +13,7 @@ public class StackCompilerReferenceTests {
public void referenceIsCompiledToLocalLoad() {
var node = Typed.reference("x");
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVariable(BoundVariable.immutable("x"));
var result = StackCompiler.compileExpression(node, context);
@@ -25,7 +26,7 @@ public class StackCompilerReferenceTests {
public void whenLocalIsVarThenReferenceIsCompiledToVarLoad() {
var node = Typed.reference("x");
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVariable(BoundVariable.mutable("x"));
context = StackCompiler.compileFunctionStatement(
Typed.var("x", Typed.intLiteral(0)),
context
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerStructDefinitionTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerStructDefinitionTests.java
index f2f07ed5..6dc845bd 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerStructDefinitionTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerStructDefinitionTests.java
@@ -21,7 +21,7 @@ public class StackCompilerStructDefinitionTests {
.addField(Typed.structFieldDefinition("isActive", Typed.typeLevelReference("Bool", Types.BOOL)))
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("User");
+ .addShedVal("User");
var result = StackCompiler.compileNamespaceStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerSumTypeDefinitionTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerSumTypeDefinitionTests.java
index 488ac261..849e2df7 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerSumTypeDefinitionTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerSumTypeDefinitionTests.java
@@ -18,7 +18,7 @@ public class StackCompilerSumTypeDefinitionTests {
var sumType = Types.sum(NamespaceName.of("Example", "Project"), "Option");
var node = Typed.sumTypeDefinition(sumType);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("Option");
+ .addShedVal("Option");
var result = StackCompiler.compileNamespaceStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerTryTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerTryTests.java
index 26bf46a8..f4e87f8f 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerTryTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerTryTests.java
@@ -34,7 +34,7 @@ public class StackCompilerTryTests {
)
.build();
var context = StackCompiler.Context.EMPTY
- .addShedVariable("c");
+ .addShedVal("c");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java
index 4d0e1451..2e6194ca 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerValTests.java
@@ -16,7 +16,7 @@ public class StackCompilerValTests {
public void whenValIsFunctionStatementThenExpressionIsEvaluatedAndStoredAsLocal() {
var node = Typed.val("x", Typed.stringLiteral("hello"));
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileFunctionStatement(node, context);
@@ -30,7 +30,7 @@ public class StackCompilerValTests {
public void whenValIsNamespaceStatementThenExpressionIsEvaluatedAndStoredAsLocal() {
var node = Typed.val("x", Typed.stringLiteral("hello"));
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileNamespaceStatement(node, context);
@@ -70,7 +70,7 @@ public class StackCompilerValTests {
Typed.expressionStatement(Typed.reference("x"))
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
for (var node : nodes) {
context = StackCompiler.compileFunctionStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerVarTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerVarTests.java
index fc133877..7df00442 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerVarTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerVarTests.java
@@ -12,7 +12,7 @@ public class StackCompilerVarTests {
public void expressionIsEvaluatedAndStoredAsVar() {
var node = Typed.var("x", Typed.stringLiteral("hello"));
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileFunctionStatement(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhenTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhenTests.java
index 0f85d48c..d19eb525 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhenTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhenTests.java
@@ -35,7 +35,7 @@ public class StackCompilerWhenTests {
Types.STRING
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("x");
+ .addShedVal("x");
var result = StackCompiler.compileExpression(node, context);
diff --git a/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhileTests.java b/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhileTests.java
index c8fd1cdc..006c0b4c 100644
--- a/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhileTests.java
+++ b/src/test/java/org/shedlang/compiler/stackir/StackCompilerWhileTests.java
@@ -19,7 +19,7 @@ public class StackCompilerWhileTests {
))
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("c");
+ .addShedVal("c");
var result = StackCompiler.compileFunctionStatement(node, context);
@@ -52,7 +52,7 @@ public class StackCompilerWhileTests {
))
);
var context = StackCompiler.Context.EMPTY
- .addShedVariable("c");
+ .addShedVal("c");
var result = StackCompiler.compileFunctionStatement(node, context);