aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-10-22 13:39:37 +0100
committerMichael Williamson <mike@zwobble.org>2023-10-22 13:39:37 +0100
commit21a0bdcedd03ac7664bbd3c3fdb5e3ac544a9813 (patch)
treebd2124170adcbf1edf14415ca6621784e59ccefe /src/main/java
parent697cc09329f8e8b1a76f408c12b88d6f387f16e7 (diff)
Have UntypedSumTypeDefinitionNode implement UntypedVariableDeclarationNode
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/ast/untyped/UntypedSumTypeDefinitionNode.java2
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java7
2 files changed, 3 insertions, 6 deletions
diff --git a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedSumTypeDefinitionNode.java b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedSumTypeDefinitionNode.java
index 18bdc6d8..a478e588 100644
--- a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedSumTypeDefinitionNode.java
+++ b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedSumTypeDefinitionNode.java
@@ -13,7 +13,7 @@ public record UntypedSumTypeDefinitionNode(
Visibility visibility,
List<UntypedTypeLevelExpressionNode> variants,
Source source
-) implements UntypedNamespaceStatementNode {
+) implements UntypedNamespaceStatementNode, UntypedVariableDeclarationNode {
public static Builder builder() {
return new Builder("DefaultSumTypeName", Visibility.PRIVATE, P.vector());
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java b/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
index 6d1c80eb..35af5842 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/DeclaredVariables.java
@@ -2,7 +2,6 @@ package org.shedlang.compiler.typechecker;
import org.pcollections.PVector;
import org.shedlang.compiler.ast.untyped.*;
-import org.shedlang.compiler.types.Visibility;
import java.util.List;
@@ -100,11 +99,9 @@ class DeclaredVariables {
));
case UntypedSumTypeDefinitionNode sumType ->
- variables.plus(new DeclaredVariable(
- sumType.name(),
+ variables.plus(DeclaredVariable.fromNode(
VariableType.CONSTANT,
- Visibility.PRIVATE,
- sumType.source()
+ sumType
));
};
}