summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java3
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/types/ConstructedNativeType.java5
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/types/Type.java1
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/types/TypeLevelValueType.java5
4 files changed, 2 insertions, 12 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
index d5af6d9..50ee664 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javatypes/JavaTypesGenerator.java
@@ -67,7 +67,8 @@ public class JavaTypesGenerator implements Generator {
for (var statement : namespace.body()) {
if (statement instanceof TypedSumDefinitionNode sumDefinition) {
for (var variant : sumDefinition.variants()) {
- var variantTypeName = variant.type().value().name();
+ // TODO: handle not struct types
+ var variantTypeName = ((StructType) variant.type().value()).name();
javaClassToImplementsType.putIfAbsent(
variantTypeName,
new ArrayList<>()
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/types/ConstructedNativeType.java b/src/main/java/org/zwobble/hobgoblin/compiler/types/ConstructedNativeType.java
index 0f8051a..e7de654 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/types/ConstructedNativeType.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/types/ConstructedNativeType.java
@@ -8,11 +8,6 @@ public record ConstructedNativeType(
List<Type> args
) implements Type {
@Override
- public String name() {
- return constructor.genericType().name();
- }
-
- @Override
public String describe() {
var argsString = args().stream()
.map(arg -> arg.describe())
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/types/Type.java b/src/main/java/org/zwobble/hobgoblin/compiler/types/Type.java
index 4af272f..6bb1642 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/types/Type.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/types/Type.java
@@ -1,5 +1,4 @@
package org.zwobble.hobgoblin.compiler.types;
public sealed interface Type extends TypeLevelValue permits ConstructedNativeType, ConstructibleType, SimpleNativeType, StructType, SumType, TypeLevelValueType, TypeParam {
- String name();
}
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/types/TypeLevelValueType.java b/src/main/java/org/zwobble/hobgoblin/compiler/types/TypeLevelValueType.java
index f2a2e47..b885c25 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/types/TypeLevelValueType.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/types/TypeLevelValueType.java
@@ -2,11 +2,6 @@ package org.zwobble.hobgoblin.compiler.types;
public record TypeLevelValueType(TypeLevelValue value) implements Type {
@Override
- public String name() {
- return "TypeLevelValue";
- }
-
- @Override
public String describe() {
return "TypeLevelValue[" + value.describe() + "]";
}