summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java
index 827e79e..353fae1 100644
--- a/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java
+++ b/src/main/java/org/zwobble/hobgoblin/compiler/output/generators/javapreciselymatchers/JavaPreciselyMatchersGenerator.java
@@ -125,7 +125,10 @@ public class JavaPreciselyMatchersGenerator implements Generator {
matcherTypeName,
JavaVisibility.PRIVATE,
List.of(
- new JavaParam(JavaTypeRef.list(matcherRef(javaStructTypeRef)), "submatchers")
+ new JavaParam(
+ JavaTypeRef.list(matcherRef(JavaTypeArg.superType(javaStructTypeRef))),
+ "submatchers"
+ )
),
new JavaBlock(List.of())
),
@@ -210,11 +213,14 @@ public class JavaPreciselyMatchersGenerator implements Generator {
private static final JavaTypeRef MATCH_RESULT_REF = JavaTypeRef.topLevel(PRECISELY_PACKAGE_NAME, "MatchResult");
private static JavaTypeRef matcherRef(JavaTypeRef arg) {
+ return matcherRef(JavaTypeArg.invariant(arg));
+ }
+
+ private static JavaTypeRef matcherRef(JavaTypeArg arg) {
return JavaTypeRef.topLevelGeneric(
PRECISELY_PACKAGE_NAME,
"Matcher",
- List.of(JavaTypeArg.invariant(arg))
+ List.of(arg)
);
}
-
}