From fed58e7cf40dea066f29cbc16b155a1c861dff9a Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 10 Aug 2026 17:41:50 +0100 Subject: Push enum variant selection into ArbitraryValueAnalysis --- .../zwobble/hobgoblin/compiler/analysis/ArbitraryValueAnalysis.java | 4 ++-- .../compiler/output/generators/javatypes/JavaTypesGenerator.java | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'src/main') diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/analysis/ArbitraryValueAnalysis.java b/src/main/java/org/zwobble/hobgoblin/compiler/analysis/ArbitraryValueAnalysis.java index b803b3d..03cb732 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/analysis/ArbitraryValueAnalysis.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/analysis/ArbitraryValueAnalysis.java @@ -39,7 +39,7 @@ public class ArbitraryValueAnalysis { } } - record EnumFirstVariant(EnumType type) implements ArbitraryValue { + record EnumVariantValue(EnumType type, EnumVariant variant) implements ArbitraryValue { @Override public void collectTypeParams(Set typeParams) { } @@ -104,7 +104,7 @@ public class ArbitraryValueAnalysis { } case EnumType enumType -> - new ArbitraryValue.EnumFirstVariant(enumType); + new ArbitraryValue.EnumVariantValue(enumType, typesInfo.enumVariants(enumType).getFirst()); case SimpleNativeType simpleNativeType -> new ArbitraryValue.NativeFunctionCall(simpleNativeType); 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 1fe01c9..8e85e91 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 @@ -671,12 +671,12 @@ public class JavaTypesGenerator implements Generator { ); } - case ArbitraryValueAnalysis.ArbitraryValue.EnumFirstVariant enumFirstVariant -> { - var enumType = enumFirstVariant.type(); + case ArbitraryValueAnalysis.ArbitraryValue.EnumVariantValue enumVariant -> { + var enumType = enumVariant.type(); yield new JavaStaticFieldAccess( generateTypeRef(enumType, context), - generateEnumConstantName(context.enumVariants(enumType).getFirst().name()) + generateEnumConstantName(enumVariant.variant().name()) ); } -- cgit v1.2.3