aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-07-24 22:17:56 +0100
committerMichael Williamson <mike@zwobble.org>2023-07-24 22:17:56 +0100
commitb3640946e1e30ec4538b88399966b7b8b8680dd6 (patch)
treecbbda7898e805cf4e8dffc7fafb6bf511d3194d7 /src/main/java
parent1380324206387b485579647bcbb0e184842579a3 (diff)
Rename DeclareVariables methods for clarity
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java16
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java13
2 files changed, 15 insertions, 14 deletions
diff --git a/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java b/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
index 99bd6ca2..af7c0828 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
@@ -11,13 +11,13 @@ class DeclaredVariables {
PVector<UntypedVariableDeclarationNode> variables
) {
for (var statement : statements) {
- variables = declaredVariables(statement, variables);
+ variables = DeclaredVariables.forFunctionStatement(statement, variables);
}
return variables;
}
- static PVector<UntypedVariableDeclarationNode> declaredVariables(
+ static PVector<UntypedVariableDeclarationNode> forFunctionStatement(
UntypedFunctionStatementNode statement,
PVector<UntypedVariableDeclarationNode> variables
) {
@@ -32,11 +32,11 @@ class DeclaredVariables {
variables;
case UntypedValNode val ->
- declaredVariables(val, variables);
+ forVal(val, variables);
};
}
- static PVector<UntypedVariableDeclarationNode> declaredVariables(
+ static PVector<UntypedVariableDeclarationNode> forNamespaceStatement(
UntypedNamespaceStatementNode statement,
PVector<UntypedVariableDeclarationNode> variables
) {
@@ -45,18 +45,18 @@ class DeclaredVariables {
variables.plus(functionDefinition);
case UntypedValNode val ->
- declaredVariables(val, variables);
+ forVal(val, variables);
};
}
- static PVector<UntypedVariableDeclarationNode> declaredVariables(
+ static PVector<UntypedVariableDeclarationNode> forVal(
UntypedValNode statement,
PVector<UntypedVariableDeclarationNode> variables
) {
- return declaredVariables(statement.target(), variables);
+ return forTarget(statement.target(), variables);
}
- private static PVector<UntypedVariableDeclarationNode> declaredVariables(
+ private static PVector<UntypedVariableDeclarationNode> forTarget(
UntypedTargetNode target,
PVector<UntypedVariableDeclarationNode> variables
) {
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
index 6c460431..4ec4d5dc 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
@@ -10,12 +10,13 @@ import org.shedlang.compiler.types.*;
import org.shedlang.compiler.util.P;
import org.shedlang.compiler.util.PCollectors;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Optional;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import static org.shedlang.compiler.typechecker.DeclaredVariables.declaredVariables;
-
public class TypeChecker {
private TypeChecker() {
@@ -584,7 +585,7 @@ public class TypeChecker {
var namespaceEnvironment = EnvironmentBuilder.EMPTY;
for (var statement : untyped.body()) {
- var declaredVariables = declaredVariables(statement, P.vector());
+ var declaredVariables = DeclaredVariables.forNamespaceStatement(statement, P.vector());
namespaceEnvironment = namespaceEnvironment.addUndefined(declaredVariables);
}
@@ -601,7 +602,7 @@ public class TypeChecker {
}
var variableNames = untyped.body().stream()
- .flatMap(untypedStatement -> declaredVariables(untypedStatement, P.vector()).stream())
+ .flatMap(untypedStatement -> DeclaredVariables.forNamespaceStatement(untypedStatement, P.vector()).stream())
.map(declaration -> declaration.name())
.collect(Collectors.toSet());
@@ -636,7 +637,7 @@ public class TypeChecker {
}
case UntypedValNode untypedVal -> {
dependencyChecker = dependencyChecker.addImmediateDependencies(
- declaredVariables(untypedVal, P.vector()),
+ DeclaredVariables.forVal(untypedVal, P.vector()),
dependencies
);
}