aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-07-09 18:50:12 +0100
committerMichael Williamson <mike@zwobble.org>2023-07-09 18:50:12 +0100
commitf24a15cfa424c7b7fb45730e875a63fd53942fe3 (patch)
tree0cdac17c7b8e54e8eaaf39aef7bfc7266d6baf5c /src/main/java
parentd6212e2189d315fe2c423919ae9c27010a886316 (diff)
Rename "none" behaviour to "continue"
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionStatementNode.java2
-rw-r--r--src/main/java/org/shedlang/compiler/ast/typed/TypedFunctionStatementBehaviour.java4
-rw-r--r--src/main/java/org/shedlang/compiler/ast/typed/TypedValNode.java2
-rw-r--r--src/main/java/org/shedlang/compiler/ast/untyped/UntypedExpressionStatementNode.java2
-rw-r--r--src/main/java/org/shedlang/compiler/ast/untyped/UntypedFunctionStatementBehaviour.java2
-rw-r--r--src/main/java/org/shedlang/compiler/ast/untyped/UntypedValNode.java2
-rw-r--r--src/main/java/org/shedlang/compiler/stackir/StackCompiler.java4
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java4
8 files changed, 11 insertions, 11 deletions
diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionStatementNode.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionStatementNode.java
index 25f1429d..c27981ff 100644
--- a/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionStatementNode.java
+++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedExpressionStatementNode.java
@@ -8,6 +8,6 @@ public record TypedExpressionStatementNode(
) implements TypedFunctionStatementNode {
@Override
public TypedFunctionStatementBehaviour behaviour() {
- return TypedFunctionStatementBehaviour.NONE;
+ return TypedFunctionStatementBehaviour.CONTINUE;
}
}
diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedFunctionStatementBehaviour.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedFunctionStatementBehaviour.java
index 615634d2..0299fd92 100644
--- a/src/main/java/org/shedlang/compiler/ast/typed/TypedFunctionStatementBehaviour.java
+++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedFunctionStatementBehaviour.java
@@ -3,7 +3,7 @@ package org.shedlang.compiler.ast.typed;
import org.shedlang.compiler.types.Type;
public sealed interface TypedFunctionStatementBehaviour {
- None NONE = new None();
+ Continue CONTINUE = new Continue();
Terminate TERMINATE = new Terminate();
static TypedFunctionStatementBehaviour blockReturn(Type type) {
@@ -12,5 +12,5 @@ public sealed interface TypedFunctionStatementBehaviour {
record Terminate() implements TypedFunctionStatementBehaviour {}
record BlockReturn(Type type) implements TypedFunctionStatementBehaviour {}
- record None() implements TypedFunctionStatementBehaviour {}
+ record Continue() implements TypedFunctionStatementBehaviour {}
}
diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedValNode.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedValNode.java
index 04b9e1b7..c25b9d2d 100644
--- a/src/main/java/org/shedlang/compiler/ast/typed/TypedValNode.java
+++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedValNode.java
@@ -9,6 +9,6 @@ public record TypedValNode(
) implements TypedFunctionStatementNode, TypedNamespaceStatementNode {
@Override
public TypedFunctionStatementBehaviour behaviour() {
- return TypedFunctionStatementBehaviour.NONE;
+ return TypedFunctionStatementBehaviour.CONTINUE;
}
}
diff --git a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedExpressionStatementNode.java b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedExpressionStatementNode.java
index 34b275c6..51c37462 100644
--- a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedExpressionStatementNode.java
+++ b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedExpressionStatementNode.java
@@ -8,6 +8,6 @@ public record UntypedExpressionStatementNode(
) implements UntypedFunctionStatementNode {
@Override
public UntypedFunctionStatementBehaviour behaviour() {
- return UntypedFunctionStatementBehaviour.NONE;
+ return UntypedFunctionStatementBehaviour.CONTINUE;
}
}
diff --git a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedFunctionStatementBehaviour.java b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedFunctionStatementBehaviour.java
index 71cfef75..82ee9ce5 100644
--- a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedFunctionStatementBehaviour.java
+++ b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedFunctionStatementBehaviour.java
@@ -3,5 +3,5 @@ package org.shedlang.compiler.ast.untyped;
public enum UntypedFunctionStatementBehaviour {
TERMINATE,
BLOCK_RETURN,
- NONE,
+ CONTINUE,
}
diff --git a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedValNode.java b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedValNode.java
index 13826cb7..e1353ab9 100644
--- a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedValNode.java
+++ b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedValNode.java
@@ -9,6 +9,6 @@ public record UntypedValNode(
) implements UntypedFunctionStatementNode, UntypedNamespaceStatementNode {
@Override
public UntypedFunctionStatementBehaviour behaviour() {
- return UntypedFunctionStatementBehaviour.NONE;
+ return UntypedFunctionStatementBehaviour.CONTINUE;
}
}
diff --git a/src/main/java/org/shedlang/compiler/stackir/StackCompiler.java b/src/main/java/org/shedlang/compiler/stackir/StackCompiler.java
index a8bc9d45..c4165b0a 100644
--- a/src/main/java/org/shedlang/compiler/stackir/StackCompiler.java
+++ b/src/main/java/org/shedlang/compiler/stackir/StackCompiler.java
@@ -106,13 +106,13 @@ public class StackCompiler {
// Extract block node?
var lastStatementBehaviour = lastStatement
.map(statement -> statement.behaviour())
- .orElse(TypedFunctionStatementBehaviour.NONE);
+ .orElse(TypedFunctionStatementBehaviour.CONTINUE);
switch (lastStatementBehaviour) {
case TypedFunctionStatementBehaviour.BlockReturn blockReturn -> {
body.add(new ReturnInstruction(node.source()));
}
- case TypedFunctionStatementBehaviour.None none -> {
+ case TypedFunctionStatementBehaviour.Continue continue_ -> {
body.add(new PushUnitInstruction(node.source()));
body.add(new ReturnInstruction(node.source()));
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
index 43713d8a..a604ae0b 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
@@ -370,7 +370,7 @@ public class TypeChecker {
var lastStatement = Lists.last(typedBody);
var lastStatementBehaviour = lastStatement
.map(statement -> statement.behaviour())
- .orElse(TypedFunctionStatementBehaviour.NONE);
+ .orElse(TypedFunctionStatementBehaviour.CONTINUE);
switch (lastStatementBehaviour) {
case TypedFunctionStatementBehaviour.BlockReturn blockReturn -> {
@@ -382,7 +382,7 @@ public class TypeChecker {
);
}
}
- case TypedFunctionStatementBehaviour.None none -> {
+ case TypedFunctionStatementBehaviour.Continue continue_ -> {
if (!isSubType(Types.UNIT, typedReturnType.value(), context)) {
throw new UnexpectedTypeError(
TypeSets.type(typedReturnType.value()),